작성자: Scott Carbon-Ogden(Android 게임 제품 관리자)
이 글의 원문은 여기서 확인하실 수 있으며 블로그 리뷰에는 백정상(Google)님이 참여해주셨습니다.
오늘 Google에서는 고품질의 Android 게임을 개발, 최적화, 배포하는 데 효과적인 종합 툴 및 라이브러리인 Android Game Development Kit(AGDK)를 출시했습니다.
AGDK에는 다음의 세 가지 주요 원칙에 기반한 특징이 있습니다.
이번 첫 출시에서는 개발자 커뮤니티로부터 많은 피드백을 받았던 세 가지 주요 영역인 통합 워크플로우, C/C++ 게임 라이브러리, 성능 최적화에 초점을 맞추고 있습니다.
통합 워크플로우
일반적으로 도구 전환이 적을수록 효율을 높일 수 있습니다. 따라서 AGDK에서는 개발자가 선호하는 IDE에서 Android 개발을 지원할 수 있는 도구를 새롭게 제공하고 있습니다. 앞으로 워크플로우 요소에 주력할 예정이며, 고유한 가치를 더해 Android 문제를 해결하면서도 기존에 편안하게 사용하던 워크플로우를 그대로 사용할 수 있도록 지원할 것입니다.
C/C++ 게임 라이브러리
자바 네이티브 인터페이스(JNI)를 줄이고 C/C++ 개발용 게임 라이브러리를 사용해 C 개발을 시작합니다. 대부분 게임 및 게임 엔진은 C++로 작성되는 반면 Android 개발에서는 자바 프로그래밍 언어를 사용해야 하는 경우가 많습니다. 하지만 자바 네이티브 인터페이스를 사용해 두 언어를 연결하려면 번거로울 뿐만 아니라 버그나 성능 회귀(performance regressions) 같은 문제가 발생할 수 있습니다. AGDK는 C 게임 라이브러리를 제공하여 자바 프로그래밍 언어 및 JNI 사용을 최소화하기 때문에 게임 엔진을 빌드하고 맞춤설정하는 데 효과적입니다. 따라서 더욱 쉽게 게임을 빌드하고, 디버깅하고, 유지할 수 있습니다.
Google에서는 개발자분들이 가장 많이 제기해주신 문제들을 해결하는 데 힘쓰고 있습니다. 단기적으로는 작업 및 입력에 필요한 기본 클래스 빌드가 여기에 포함됩니다. 장기적으로는 C 라이브러리를 추가로 만들어 여러 게임 엔진에서 공통적으로 사용할 수 있는 기능을 제공할 계획입니다. 그 밖에도 기존 프레임 속도와 고성능 오디오 라이브러리를 통합하는 동시에 다음과 같은 세 가지 라이브러리를 새롭게 추가하려고 합니다.
이러한 라이브러리에 대한 자세한 내용은 C/C++ 라이브러리 세션에서 확인할 수 있습니다.
최대한 손쉽게 통합할 수 있도록 모든 라이브러리를 Maven 종속 항목이나, 사전에 컴파일된 Zip 파일로, 혹은 소스 코드로 가져올 수 있습니다.
성능 최적화
Google의 목표는 출시 이전에 안정성 또는 성능 문제를 발견하고, 출시 이후에도 게임을 모니터링하여 어떠한 문제든 포착하도록 지원하는 데 있습니다. 이를 위해 처음에는 프레임 속도, 로드 시간, 메모리 등 가장 중요한 측정항목부터 시작하지만, 앞으로 시간이 지나면서 다른 측정항목을 새롭게 추가할 예정입니다.