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]