TECH 으로 돌아가기
TECH HACKER NEWS 오늘 7분 읽기 25 READS

게임잼용 초경량 엔진이 3D까지? 자바스크립트 게임 엔진 LittleJS의 변신

게임잼용 초경량 엔진이 3D까지? 자바스크립트 게임 엔진 LittleJS의 변신
SOURCE IMAGE · HACKER NEWS
게임잼용 초경량 엔진이 3D까지? 자바스크립트 게임 엔진 LittleJS의 변신

LittleJS가 뭐냐면요

LittleJS는 Frank Force라는 개발자가 만든 아주 작고 빠른 자바스크립트 게임 엔진이에요. 이 분은 웹 게임과 '사이즈 코딩'(아주 작은 용량 안에 프로그램을 욱여넣는 놀이) 분야에서 꽤 알려져 있는데요, 몇 바이트짜리 코드로 효과음을 만들어내는 ZzFX를 만든 사람이기도 해요. LittleJS도 그 철학을 이어받아서 의존성 없이 가볍고, 그러면서도 빠른 것이 특징이에요.

지금까지 LittleJS는 '2D 게임 엔진'이었어요. 그런데 이번에 3D 지원이 들어가면서 2D와 3D를 모두 다루는 엔진이 됐다는 소식이 나왔어요. 작고 단순한 게 정체성이던 엔진이 3D로 영역을 넓혔다는 게 흥미로운 대목이에요.

원래 LittleJS는 어떤 엔진이었나

먼저 '게임 엔진이 하는 일'부터 짚어볼게요. 게임은 보통 1초에 60번씩 '입력 받기 → 게임 상태 업데이트 → 화면 그리기'를 반복해요. 이걸 게임 루프라고 하는데, 엔진은 이 루프를 돌려주고 화면 그리기, 소리, 입력, 충돌 처리 같은 공통 기능을 대신 해줘요. LittleJS의 대표적인 특징은 이래요.

이 사이에서 LittleJS의 자리는 분명해요. '작고, 빠르고, 필요한 건 다 들어 있는' 엔진이요. 대형 상용 게임보다는 게임잼, 프로토타입, 교육용, 웹에 가볍게 붙이는 미니게임에 강해요. 여기에 3D까지 되면 'Three.js를 끌어오기엔 과하고 Phaser로는 부족한' 애매한 구간을 채울 수 있어요.

한국 개발자에게는

요즘 국내에도 웹 기반 미니게임이 많아요. 이벤트 페이지의 간단한 게임이나 슈퍼앱 안에서 돌아가는 미니앱 게임 같은 것들이요. 이런 데서는 번들 크기가 작고 로딩이 빠른 게 정말 중요한데, LittleJS 같은 경량 엔진이 잘 맞아요.

게임 개발을 공부하고 싶은 분들께도 추천해요. 코드베이스가 작아서 엔진 내부를 처음부터 끝까지 읽어볼 수 있거든요. 게임 루프, 스프라이트 배칭(여러 그림을 한 번에 묶어 그려서 GPU 호출을 줄이는 기법), 충돌 처리가 실제로 어떻게 구현되는지 거대한 엔진보다 훨씬 쉽게 따라갈 수 있어요. 주말에 예제 하나 띄워보고, 다음 게임잼에 도전해 보는 것도 좋겠네요.

마무리

한 줄 정리: '작고 빠른' 2D 엔진이 3D까지 품으면서 웹 미니게임과 프로토타입을 만들 때 고를 수 있는 엔진이 하나 더 늘었어요.

여러분은 웹 게임을 만들 때 어떤 엔진을 쓰시나요? 가벼운 올인원 엔진과 Three.js 같은 전문 라이브러리 조합 중 어느 쪽이 더 좋으신가요?


🔗 출처: Hacker News

SOURCE · HACKER NEWS
원문 전체 보기 → https://frankforce.com/littlejs-is-2d-and-3d-now/
SHARE
NEXT · CHOOSE

변화를 읽었다면,
내가 만들 수익 구조를 고릅니다.

정보를 더 모으는 데서 멈추지 않고, 광고·외주·판매·중개·구독 중 내 상황에 맞는 출발점을 정해보세요.

21가지 수익 구조 살펴보기 →
처리 중...