Phaser
Phaser는 웹 브라우저에서 실행하는 2차원 게임 개발을 위해 만들어진 오픈 소스 HTML5 게임 프레임워크다. 데스크톱용 통합 엔진 실행 파일이 아니라 JavaScript 라이브러리로 제공되며, 웹 페이지에 포함하거나 npm 기반 프로젝트에서 설치해 사용할 수 있다. 게임 로직 작성...
| 분류 | HTML5 2D 게임 프레임워크 |
|---|---|
| 개발 주체 | Phaser Studio, Phaser 오픈 소스 공동체 |
| 최초 공개 | 2013년 |
| 작성 언어 | JavaScript |
| 개발 언어 | JavaScript, TypeScript |
| 대상 플랫폼 | 데스크톱·모바일 웹 브라우저 |
| 그래픽스 API | WebGL, Canvas |
| 주요 구조 | Scene, Game Objects, 입력·애니메이션·물리 시스템 |
| 물리 기능 | Arcade Physics 등 |
| 배포 방식 | JavaScript 라이브러리·npm 패키지 |
| 라이선스 | MIT License |
| 공식 문서 | docs.phaser.io |
| 공식 웹사이트 | phaser.io |
Phaser는 웹 브라우저에서 실행하는 2차원 게임 개발을 위해 만들어진 오픈 소스 HTML5 게임 프레임워크다. 데스크톱용 통합 엔진 실행 파일이 아니라 JavaScript 라이브러리로 제공되며, 웹 페이지에 포함하거나 npm 기반 프로젝트에서 설치해 사용할 수 있다. 게임 로직 작성에는 JavaScript나 TypeScript를 이용한다.[1]
Phaser의 프로젝트는 Scene을 중심으로 구성된다. 각 장면에서는 이미지·스프라이트·텍스트와 기타 게임 객체를 만들고 키보드·마우스·터치 입력을 처리하며, 게임 루프의 업데이트 단계에서 객체의 위치와 상태를 변경한다. 스프라이트 시트 애니메이션, 카메라·타일맵 및 파티클 효과 등 2D 콘텐츠 제작에 필요한 기능을 제공한다.
렌더링 시스템은 브라우저의 WebGL을 기본적으로 활용하며, 환경에 따라 Canvas 기반 렌더링이 사용되는 계열도 있다. 물리 시뮬레이션은 Arcade Physics와 같은 2D 시스템을 이용할 수 있고, 화면 좌표와 충돌 영역을 기반으로 캐릭터와 객체의 움직임을 계산한다. 기본 설계는 2D 게임을 대상으로 하므로 범용 3D 렌더링 엔진과 구별된다.
Phaser는 운영체제별 네이티브 실행 환경을 직접 제공하는 대신 HTML5·웹 API와 웹 배포 인프라를 활용한다. 게임은 CDN 또는 웹 서버에서 배포할 수 있으며, 별도의 도구와 결합하면 모바일·데스크톱 앱 형태로 포장할 수 있다. 게임의 실행 환경은 실제로는 브라우저 엔진이나 이를 내장한 컨테이너다.
JavaScript 기반 프레임워크이므로 React·Vue 등의 웹 프레임워크 및 Vite 같은 개발 도구와 함께 사용할 수 있다. Phaser는 게임 객체·렌더링·입력 등 게임용 기능을 담당하고, 다른 프레임워크는 주변 웹 UI나 애플리케이션 로직을 처리할 수 있다. 공식 문서는 Phaser 4를 독립적인 2D 프레임워크로 소개하며, 2D·3D AI 제작 도구용 별개 제품인 Phaser AE와 구분한다.[2]