PlayCanvas
PlayCanvas는 웹 브라우저에서 실행되는 3차원 게임과 인터랙티브 콘텐츠를 제작하기 위한 JavaScript 기반 오픈 소스 게임 엔진이다. WebGL과 WebGPU를 사용해 GPU 가속 그래픽을 처리하며 웹사이트나 애플리케이션에 3D 장면을 포함할 수 있다. 엔진은 MIT 라이선...
| 분류 | 게임 엔진, 웹 기반 3D 그래픽스 엔진 |
|---|---|
| 개발 주체 | PlayCanvas 및 오픈 소스 공동체 |
| 작성 언어 | JavaScript |
| 개발 언어 | JavaScript, TypeScript |
| 그래픽스 API | WebGL, WebGPU |
| 추가 웹 기술 | WebXR, glTF |
| 핵심 구조 | 엔티티·컴포넌트, Scene Graph, Script Component |
| 제작 도구 | PlayCanvas Editor |
| 실행 플랫폼 | 웹 브라우저, 모바일·데스크톱 웹 |
| 라이선스 | 엔진 MIT License |
| 소스 코드 | GitHub |
| 공식 문서 | PlayCanvas Developer |
| 공식 웹사이트 | playcanvas.com |
PlayCanvas는 웹 브라우저에서 실행되는 3차원 게임과 인터랙티브 콘텐츠를 제작하기 위한 JavaScript 기반 오픈 소스 게임 엔진이다. WebGL과 WebGPU를 사용해 GPU 가속 그래픽을 처리하며 웹사이트나 애플리케이션에 3D 장면을 포함할 수 있다. 엔진은 MIT 라이선스의 공개 라이브러리로 제공되고, 별도의 브라우저 기반 편집기를 통해 프로젝트를 관리할 수 있다.[1]
PlayCanvas의 실행 구조는 Scene Graph와 엔티티·컴포넌트를 중심으로 한다. 엔티티에 모델·카메라·광원·스크립트 등의 기능을 부착하고 부모·자식 관계를 통해 공간 변환과 객체 그룹을 관리한다. JavaScript 스크립트는 입력 처리와 게임 상태의 변경, 애니메이션 및 외부 웹 서비스와의 통신을 담당할 수 있다.
PlayCanvas Editor는 브라우저 안에서 장면을 수정하고 자산·스크립트를 업로드·관리하며 개발 결과를 미리 보는 시각적 제작 환경이다. 엔진을 독립적인 npm 라이브러리로 사용하는 방식과 편집기 서비스에서 프로젝트를 만드는 방식은 구별된다. JavaScript 엔진의 소스 코드가 공개돼 있다는 사실이 편집기 서비스의 모든 이용·요금 조건까지 동일하다는 뜻은 아니다.
그래픽스 시스템은 물리 기반 재질, 실시간 광원과 그림자·후처리 효과를 제공하며 glTF와 같은 3D 자산을 로드할 수 있다. WebXR 등의 브라우저 기술을 활용하면 VR·AR 콘텐츠에 대응할 수 있고, WebGPU 백엔드는 브라우저가 지원하는 현대적 GPU API의 기능을 이용하는 데 사용된다. 실행 환경의 구체적인 그래픽 기능은 브라우저와 장치에 따라 달라진다.
PlayCanvas는 운영체제별 네이티브 엔진 바이너리보다 웹 표준에 기초한 배포를 우선한다. 개발자는 하나의 프로젝트를 웹 서버에 공개하거나 다른 애플리케이션에 포함할 수 있으며, 소스 수정과 자체 그래픽 시스템 확장이 가능하다. Babylon.js와 Three.js 같은 다른 JavaScript 기반 3D 기술과 비교할 때 PlayCanvas는 게임 제작용 런타임과 시각적 편집기 통합에 초점을 둔다.[2]