Cube 2 Engine
Cube 2 Engine은 《Cube 2: Sauerbraten》에 사용된 오픈 소스 3차원 게임 엔진이다. Wouter van Oortmerssen이 개발한 이전 Cube Engine의 기술을 확장했으며, FPS 게임 실행 중에도 3D 월드를 편집하고 다른 이용자와 협력해 지형을 수정...
| 분류 | 게임 엔진 또는 개발 프레임워크 |
|---|---|
| 개발 주체 | Wouter van Oortmerssen 및 Sauerbraten 기여자 |
| 작성 언어 | C++ |
| 게임 개발 언어 | CubeScript |
| 주요 기술 | 실시간 게임 내 지형 편집·Octree·FPS·멀티플레이 |
| 지원 플랫폼 | Windows, Linux, macOS 등 |
| 라이선스 | 엔진 zlib License; 게임 자산 별도 |
| 공식 웹사이트 | 공식 사이트 |
| 원작 게임 | Cube 2: Sauerbraten |
| 기술 기반 | Cube Engine 후속 |
| 지도 표현 | Octree |
| 모딩 | CubeScript·맵 편집 |
| 소스 공개 | 엔진 공개·게임 자료 별도 |
Cube 2 Engine은 《Cube 2: Sauerbraten》에 사용된 오픈 소스 3차원 게임 엔진이다. Wouter van Oortmerssen이 개발한 이전 Cube Engine의 기술을 확장했으며, FPS 게임 실행 중에도 3D 월드를 편집하고 다른 이용자와 협력해 지형을 수정할 수 있는 기능을 핵심 특징으로 삼는다. 빠른 게임플레이와 레벨 제작의 결합을 중시한 엔진이다.[1]
세계의 기하 구조는 옥트리(Octree) 계열의 공간 표현을 이용하고 맵 편집기는 개별 블록과 표면을 수정할 수 있도록 한다. 실시간 장면 렌더링과 충돌·게임 객체 처리가 이루어지는 동안 사용자가 레벨의 구조를 직접 변경할 수 있어 별도의 컴파일 작업을 반복하는 전통적 FPS 도구와 작업 방식이 다르다.
네트워크 멀티플레이에서는 게임 상태와 입력뿐 아니라 협력 맵 편집도 지원한다. 이용자는 서버에 접속해 같은 레벨의 구조와 객체를 변경하고 결과를 즉시 확인할 수 있다. 엔진은 FPS 게임플레이와 지도 제작 기능이 동시에 작동하도록 게임 객체·렌더링 및 네트워크 시스템을 관리한다.
게임 규칙과 편집 기능의 일부에는 CubeScript가 사용되며, 네이티브 C++ 코드와 연결해 동작한다. 모델·텍스처·사운드 등의 자산은 별도로 로드할 수 있고 지형·조명과 사용자 입력, FPS 게임 로직을 포함한다. 맵 형식과 렌더링 기술은 초기 Cube와 크게 달라졌으므로 두 엔진을 동일한 실행 코드로 간주할 수 없다.
Sauerbraten의 엔진 소스는 zlib 라이선스지만 게임의 이미지·사운드·맵 등 자산은 별도의 저작권 조건을 따른다. 따라서 소스 수정·상용 재사용 가능성과 원작 콘텐츠를 그대로 다른 게임에 재배포하는 권한은 구분해야 한다.[2]