Oak Engine

Oak Engine은 개발자 cenomla가 제작한 C++ 기반의 실험적인 3차원 게임 엔진이다. 소규모 코드베이스와 높은 확장성, 스레드 병렬 처리를 중시하며 Lua 스크립팅과 컴포넌트 기반 엔티티 모델을 제공한다. 공개 저장소는 이 프로젝트를 개발 초기 단계의 경량 게임 엔진으로 소...

분류게임 엔진, 경량 3차원 오픈 소스 엔진
개발자·저장소cenomla
개발 언어C++
스크립팅Lua
렌더링OpenGL 4
미래 설계Vulkan 지원 계획
핵심 구조컴포넌트 기반 엔티티, 프리팹
실행 구조멀티스레드 작업 관리자, 이벤트 메시징
외부 라이브러리GLFW, GLAD, GLM, libsoundio 등
빌드Meson, Ninja
예제sandbox 데모
개발 상태초기 실험 프로젝트, 2026년 7월 저장소 보관
공개 라이선스MIT License
소스 코드cenomla/oakengine

Oak Engine은 개발자 cenomla가 제작한 C++ 기반의 실험적인 3차원 게임 엔진이다. 소규모 코드베이스와 높은 확장성, 스레드 병렬 처리를 중시하며 Lua 스크립팅과 컴포넌트 기반 엔티티 모델을 제공한다. 공개 저장소는 이 프로젝트를 개발 초기 단계의 경량 게임 엔진으로 소개하며, 상업용 통합 제작 제품보다 렌더링·객체 관리와 플랫폼 기반을 직접 결합하는 연구용 구현의 성격이 강하다.[1]

엔진의 핵심 구성에는 여러 작업을 병렬 실행하기 위한 태스크 관리자, 이벤트·메시징 시스템 및 메모리 할당 관리 기능이 있다. 게임 오브젝트는 컴포넌트를 결합해 표현하고, 프리팹을 통해 공통 구성을 재사용하도록 설계됐다. 이 구조는 게임 로직이 서로 다른 시스템에 접근할 수 있는 기반을 제공하며 새로운 기능을 독립 모듈로 추가하는 것을 목표로 한다.

그래픽스에는 OpenGL 4 렌더러가 구현되었고 GLFW·GLAD·GLM 등을 이용해 창, OpenGL 함수와 수학 연산을 처리한다. Vulkan은 저장소 설명에서 향후 지원할 기술로 제시되므로 이미 완성된 기본 렌더러로 취급하지 않는다. 사운드 처리는 libsoundio 연동이 포함되며 루아 스크립트로 게임 동작을 작성할 수 있다.[2]

빌드는 Meson과 Ninja를 중심으로 안내되며 core, lib, platform, sandbox, tests, tools와 같은 소스 영역이 공개되어 있다. 공식 문서는 Linux 빌드 절차를 구체적으로 제공하고 Windows와 macOS는 이식 가능한 라이브러리 사용을 근거로 향후 동작 가능성을 언급한다. 이 사실과 실제로 검증된 동일 수준의 플랫폼 지원은 구분된다.

소스 트리의 sandbox에는 엔진의 기능을 사용해 보는 예제가 있으며, 초기 상태로 남아 있는 문서와 기능은 구현의 범위를 파악하는 자료가 된다. 2026년 7월 27일 GitHub 저장소가 보관 처리되어 읽기 전용이 되었고, 현재 개발이 계속되는 별도의 공식 후속 제품이라고 단정할 자료는 확인되지 않는다.[3]

원본 소스에는 MIT 라이선스가 적용된다. 실험적인 엔진이므로 안정적인 자산 파이프라인이나 대형 게임 편집기가 모두 제공되는 것으로 이해하기보다 구현된 C++ 런타임과 렌더링·스크립트 통합을 중심으로 기술한다. 동명 프로젝트가 존재할 수 있어 문서의 대상은 cenomla의 oakengine 코드베이스로 한정한다.

역사

설계 목표와 기술 계보

엔진 아키텍처

실행 모델과 게임 객체

프로그래밍·스크립팅

렌더링·그래픽스

물리·애니메이션·입력

오디오·네트워크

자산과 제작 도구

지원 플랫폼과 이식

라이선스 및 원본 콘텐츠

활용 사례와 영향

관련 문서

  1. Oak Engine 공식 저장소 ↩
  2. Oak Engine 구현 기능 목록 ↩
  3. Oak Engine GitHub 보관 기록 ↩