ezEngine

ezEngine은 C++로 개발되는 무료·오픈 소스 3차원 게임 엔진이다. 전체 엔진을 통합 제작 환경으로 사용하거나 렌더링·게임 로직·자원 관리 등의 필요한 구성 요소만 선택하여 별도 프로젝트에 결합할 수 있도록 모듈성과 확장성을 강조한다. 기본 라이브러리와 런타임, 에디터 기능을 구...

분류게임 엔진, 범용 3차원 게임 엔진
개발 주체ezEngine 오픈 소스 프로젝트
개발 언어C++
설계 방식모듈식 기반 라이브러리와 플러그인
기본 도구ezEditor
게임 프로그래밍C++, 시각적 스크립팅
렌더링Vulkan 기본, 선택적 Direct3D 11
물리Jolt Physics 플러그인
오디오FMOD 플러그인
기타 기능장면·오브젝트, 파티클, 자산 빌드·관리
기본 개발 환경Windows 11 및 Visual Studio
기타 플랫폼Linux·macOS·Android의 일부 기반 라이브러리
하드웨어 요구64비트 CPU, Vulkan 1.1 대응 GPU 기준
툴체인CMake, Visual Studio, C++ 컴파일러
공개 라이선스MIT License
공식 문서ezengine.net
소스 코드ezEngine/ezEngine

ezEngine은 C++로 개발되는 무료·오픈 소스 3차원 게임 엔진이다. 전체 엔진을 통합 제작 환경으로 사용하거나 렌더링·게임 로직·자원 관리 등의 필요한 구성 요소만 선택하여 별도 프로젝트에 결합할 수 있도록 모듈성과 확장성을 강조한다. 기본 라이브러리와 런타임, 에디터 기능을 구분하고 플러그인으로 기능을 확장하며, 자체 게임이나 특수 목적의 실시간 시뮬레이션 기술을 만드는 기반으로 활용할 수 있다.[1]

ezEngine의 설계 철학은 시스템 전체를 하나의 거대한 필수 의존성으로 묶기보다 공통 기반과 선택 가능한 기능을 구분하는 것이다. 제작자는 엔진이 제공하는 자료 구조와 시스템, 플랫폼 처리 계층을 재사용하면서 프로젝트에 필요하지 않은 기능은 제외할 수 있다. 물리·오디오·파티클과 같은 상위 기능은 플러그인으로 제공되고, 일부는 외부 미들웨어를 연동한다. 이 방식은 엔진 사용뿐 아니라 새로운 내부 엔진 개발에도 활용하기 적합하다.

실시간 장면은 렌더링 시스템과 게임 오브젝트, 컴포넌트, 리소스 및 실행 루프로 관리된다. 개발자는 C++ 코드나 시각적 스크립트 기능을 사용해 동작을 작성하고, 엔진의 객체 속성과 연동할 수 있다. ezEditor에서는 장면과 자산, 객체의 속성을 편집하고 실행 상태를 확인할 수 있다. 화면을 구성하는 데이터와 실제 게임 로직을 별도로 유지하면서 공통 편집 도구를 활용하도록 하는 구조다.[2]

렌더링 백엔드는 프로젝트의 발전 과정에서 변화했다. 과거 ezEngine의 주요 실행 환경은 Windows와 Direct3D 11 중심이었지만, 2026년 공식 플랫폼 문서에는 Windows의 기본 렌더러로 Vulkan이 사용된다고 명시돼 있다. Direct3D 11 백엔드도 CMake 옵션으로 활성화할 수 있다. 런타임의 기본 기능과 그래픽스 기능은 플랫폼별 지원 상태가 다르므로 모든 라이브러리가 컴파일된다는 사실이 전체 엔진과 편집기가 즉시 실행된다는 뜻은 아니다.[3]

공식 문서에 따르면 Windows 11 및 Visual Studio 2022·2026 기반의 64비트 개발 환경이 가장 폭넓게 검증됐다. Linux로 편집기를 이식하는 작업이 진행 중이고, macOS·Android·Linux에서는 기본 라이브러리가 완전하게 동작하는 범위를 별도로 안내한다. Vulkan 사용에는 일반적으로 1.1 대응 GPU가 필요하고, 다른 그래픽스 API 사용 및 빌드 조건에 따라 요구 사항이 달라진다. 패키지된 바이너리 외에 소스를 직접 컴파일하는 경로도 제공한다.

ezEngine은 MIT 라이선스로 공개되며 핵심 소스, 문서와 예제를 다운로드하여 사용할 수 있다. 외부 라이브러리와 선택적 상용 미들웨어에는 해당 소프트웨어의 독립적인 라이선스가 적용된다. 전용 게임 제작 소프트웨어뿐 아니라 C++ 기반의 렌더링·실시간 실행 기술을 직접 구성하고 싶은 개발자에게 유연한 설계가 특징이다. 장기적인 기술 평가에서는 특정 릴리스의 지원 플랫폼과 에디터, 그래픽스 백엔드 상태를 별도로 기록해야 한다.[4]

역사

개발 목적과 기술적 배경

엔진 아키텍처

실행 모델과 게임 객체

개발 언어와 스크립팅

렌더링과 그래픽스

물리·입력·오디오

자산 형식과 데이터 처리

제작 도구와 디버깅

지원 플랫폼과 배포

라이선스와 소스 공개

게임 제작과 활용 사례

기술적 영향

관련 문서

  1. ezEngine 공식 소개 ↩
  2. ezEngine 소스와 주요 기능 ↩
  3. ezEngine: 지원 플랫폼과 렌더러 ↩
  4. ezEngine 공식 GitHub 저장소 ↩