GamePlay
GamePlay는 독립 개발자를 위해 만들어진 오픈 소스 크로스 플랫폼 2D·3D 게임 엔진 프레임워크다. C++ 라이브러리와 샘플, 콘텐츠 변환 도구를 제공해 Windows·Linux·macOS와 모바일 게임을 하나의 코드베이스로 개발할 수 있게 한다. 게임 제작자가 직접 실행 코드를...
| 분류 | 게임 엔진, 2D·3D 게임 개발 프레임워크 |
|---|---|
| 공식 표기 | GamePlay / gameplay3d |
| 구현 언어 | C++ |
| 주요 버전 | 3.0.0 (2015년 공개) |
| 그래픽스 | OpenGL·OpenGL ES |
| 게임 스크립트 | Lua 연동 |
| 핵심 구조 | 장면 그래프, 렌더러·카메라·재질 |
| 주요 기능 | 입력·오디오·물리·애니메이션·UI·AI |
| 주요 운영체제 | Windows, macOS, Linux |
| 모바일 대상 | iOS, Android |
| 개발 도구 | FBX 자원 변환, 프로젝트 생성 스크립트 |
| 빌드 체계 | CMake, 플랫폼별 IDE 프로젝트 |
| 라이선스 | Apache License 2.0 |
| 공식 프로젝트 | gameplay3d/gameplay |
| 기능 안내 | GamePlay 홈페이지 |
GamePlay는 독립 개발자를 위해 만들어진 오픈 소스 크로스 플랫폼 2D·3D 게임 엔진 프레임워크다. C++ 라이브러리와 샘플, 콘텐츠 변환 도구를 제공해 Windows·Linux·macOS와 모바일 게임을 하나의 코드베이스로 개발할 수 있게 한다. 게임 제작자가 직접 실행 코드를 작성하는 형태로, 여러 플랫폼의 그래픽스·입력·오디오 API 차이를 공통 인터페이스로 다루는 데 중점을 둔다.[1]
핵심 런타임은 게임 초기화·갱신·렌더링 이벤트를 관리하고 그래픽스·입력과 음향 등의 플랫폼별 기능을 캡슐화한다. OpenGL과 OpenGL ES를 사용하는 렌더링 시스템에는 재질·셰이더, 장면 그래프, 광원·카메라가 포함된다. 개발자는 3D 모델과 카메라, 애니메이션을 장면에 연결하고 자체적인 게임 로직을 C++ 코드에 구현할 수 있다.
GamePlay는 지형과 스프라이트, 2D·3D UI, 애니메이션, 오디오·물리 및 AI 기능을 제공한다. FBX 자산을 효율적인 내부 형식으로 변환하는 도구가 포함되고, Lua 연동 및 바인딩 생성기 등을 통해 엔진 객체와 게임 스크립트를 연결할 수 있다. 기본 GUI 라이브러리는 테마와 레이아웃을 적용하는 컨트롤을 제공하여 게임 화면과 메뉴를 같은 런타임에서 구현한다.[2]
프로젝트의 소스는 Windows·macOS·Linux 외에 iOS와 Android를 대상으로 빌드할 수 있도록 설명돼 있다. 개발 환경은 Visual Studio, Xcode, Qt Creator, Eclipse, CMake 등 플랫폼별 도구를 사용하며 게임 프로젝트 생성 스크립트로 기본 구조를 마련할 수 있다. 역사적인 도구·SDK 목록과 현재 운영체제의 호환 상태는 별도로 구분해야 한다.
GamePlay v3.0.0은 2015년에 릴리스됐고 공개 저장소에는 API와 개발 가이드, 샘플이 보존되어 있다. 라이선스는 Apache License 2.0이며 게임 제작과 코드 수정에 활용할 수 있다. 같은 이름으로 불리는 다른 제품이나 게임과 구별하기 위해 게임 엔진 목록에서는 gameplay3d 프로젝트를 정확한 대상으로 삼는다. 웹과 모바일·데스크톱을 연결하는 C++ 게임 프레임워크의 한 사례다.[3]