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]

역사

개발 조직·기술 계보

아키텍처와 실행 구조

그래픽스와 렌더링

게임 객체·장면·맵

스크립팅과 프로그래밍

에셋 및 편집 도구

입력·물리·사운드

멀티플레이 및 지원 플랫폼

라이선스와 공개 범위

활용 작품과 관련 기술

관련 문서

  1. Cube 2 공식 게임·엔진 자료 ↩
  2. Sauerbraten 엔진 라이선스 설명 ↩