게임 엔진
IT 위키
- Game Engine
- 게임 개발에 공통으로 필요한 기능을 묶어 재사용할 수 있게 만든 소프트웨어 프레임워크
게임마다 렌더링·물리·입력 처리를 새로 만들지 않고, 엔진 위에 콘텐츠와 게임 로직만 올린다.
- 렌더링 엔진 — 3D 파이프라인, 셰이더, 조명, 그림자, 후처리
- 물리 엔진 — 강체 역학, 충돌 검출, 래그돌
- 애니메이션 시스템 — 스켈레탈 애니메이션, 블렌딩, 상태 기계
- 사운드 엔진 — 3D 음향, 믹싱
- 씬 그래프 / 씬 관리 — 공간 분할, 컬링(Frustum·Occlusion)
- 스크립팅 — C#, Lua, 블루프린트
- 네트워크 — 동기화, 세션
- 리소스 관리 — 에셋 로딩, 스트리밍
- 에디터 — 레벨 편집, 빌드 파이프라인
| 제약 | 대응 기법 |
|---|---|
| GPU 성능과 대역폭 | 타일 기반 렌더링(TBDR)에 맞춘 파이프라인, 드로우콜 최소화(배칭·인스턴싱) |
| 메모리 | 텍스처 압축(ETC2, ASTC), LOD, 밉맵, 에셋 스트리밍 |
| 배터리·발열 | 프레임 제한, 셰이더 단순화, 동적 해상도 |
| 기기 파편화 | 그래픽 품질 단계(Quality Tier), 기기별 프로파일 |
| 화면·입력 | 터치 입력 체계, 다양한 화면비 대응 UI |
| 배포 용량 | 에셋 번들 분리, 다운로드 확장 파일 |
- 그래픽 API 는 OpenGL ES → Vulkan / Metal 로 옮겨 가는 중이다.
| 엔진 | 언어 | 특징 |
|---|---|---|
| Unity | C# | 모바일 점유율이 가장 높다. 멀티플랫폼 빌드가 강점 |
| Unreal Engine | C++ / 블루프린트 | 고품질 렌더링. 소스 공개 |
| Godot | GDScript / C# | 오픈 소스, 가볍다 |
| Cocos2d-x | C++ / Lua | 2D 에 강하다 |
