AndEngine
AndEngine은 Nicolas Gramlich가 개발한 Android용 Java 기반 오픈 소스 2차원 게임 엔진이다. 스프라이트와 카메라·화면 장면, 터치 입력과 게임 루프를 제공하여 초기 Android 스마트폰에서 2D 게임을 제작하는 데 널리 활용됐다. 통합 데스크톱 에디터보다...
| 분류 | Android 2D 오픈 소스 게임 엔진 |
|---|---|
| 개발자 | Nicolas Gramlich |
| 작성 언어 | Java |
| 게임 개발 언어 | Java |
| 플랫폼 | Android |
| 그래픽스 | OpenGL ES 1.x·2.0 |
| 장면 구성 | Scene, Entity, Sprite, Camera |
| 주요 기능 | 터치 입력, 스프라이트·애니메이션, 텍스처 |
| 물리 확장 | Box2D 연동 Extension |
| 기타 확장 | 라이브 배경 화면, AR, 멀티플레이, Tiled 지도 |
| 빌드 기술 | Android SDK·Eclipse ADT (역사적) |
| 기존 개발 시기 | 2010년대 초반 |
| 프로젝트 상태 | 이전 Android SDK 기술 기반·업데이트 비활성 |
| 라이선스 | Apache License 2.0 |
| 코드 저장소 | nicolasgramlich/AndEngine |
AndEngine은 Nicolas Gramlich가 개발한 Android용 Java 기반 오픈 소스 2차원 게임 엔진이다. 스프라이트와 카메라·화면 장면, 터치 입력과 게임 루프를 제공하여 초기 Android 스마트폰에서 2D 게임을 제작하는 데 널리 활용됐다. 통합 데스크톱 에디터보다 Java 코드와 Android SDK를 이용하는 개발 흐름에 중점을 둔다.[1]
게임의 화면은 Scene과 Entity·Sprite 등의 객체로 구성한다. 카메라는 화면에 표시할 월드 영역과 좌표 변환을 관리하고, Sprite는 이미지·애니메이션 프레임을 렌더링한다. 터치 입력은 화면과 객체의 상호작용에 전달되어 캐릭터 이동·메뉴 조작과 게임 진행에 사용할 수 있다.
렌더링은 OpenGL ES를 기반으로 하며 주요 브랜치에는 OpenGL ES 1.x와 2.0 계열 코드가 있다. 초기 버전은 많은 당시 Android 기기에서 실행하도록 구성됐고, 후속 GLES2 브랜치는 그래픽스 표현과 좌표 처리 방식을 변경했다. 따라서 하나의 AndEngine 프로젝트를 모든 브랜치에서 코드 수정 없이 빌드할 수 있는 것은 아니다.
공식 저장소에는 물리 계산을 위한 Box2D 확장, AR·라이브 배경화면·멀티플레이 및 타일맵 지원을 위한 별도 확장 프로젝트가 기록돼 있다. 게임 제작자는 필요한 기능을 선택해 Android 앱에 결합할 수 있다. 빌드 안내에는 Eclipse Android Developer Tools 등의 과거 Android 개발 도구가 등장하므로 현재 Android Studio 환경에서는 빌드 체계의 호환성을 확인해야 한다.
AndEngine 코드는 Apache License 2.0으로 공개됐으며 상업적 이용이 가능하다. 그러나 공개 저장소의 빌드 도구와 Android API 의존성이 오래된 부분이 있으므로 활발한 현대 Android 엔진과 같은 유지보수 상태로 안내하면 안 된다. libGDX와 달리 AndEngine은 역사적으로 Android 플랫폼에 직접 특화된 2D 엔진이었다.