Firemonkeys는 AGDE를 사용해 개발 및 디버깅 시간을 단축했습니다.

Electronic Arts(EA)는 미국 캘리포니아에 본사를 둔 게임 회사입니다. 스포츠, 액션, 레이싱, 시뮬레이션 등 다양한 장르의 다양한 게임을 제작합니다. EA의 개발 스튜디오인 Firemonkeys는 Real Racing 3, The Sims FreePlay, Need For Speed: No Limits의 개발사로 잘 알려져 있습니다. Firemonkeys는 맞춤 게임 엔진을 사용하여 게임을 개발하고 있으며, 이제 모든 Android 게임의 개발 워크플로에 Android 게임 개발 확장 프로그램 (AGDE)을 사용합니다. 스튜디오는 빌드 및 디버깅 워크플로를 간소화하여 궁극적으로 개발 노력과 비용을 절감할 방법을 찾고 있었으며, AGDE가 이를 제공했습니다.

심즈: 프리플레이 스크린샷 그림 1: 심즈: 프리플레이 스크린샷

사용 방식

Firemonkeys는 AGDE를 사용하여 모든 테스트용 Android 빌드를 생성하고 Android에서 네이티브 C/C++ 코드를 디버그합니다. 게임 빌드 워크플로에는 컴파일 시간을 개선하기 위해 사전 컴파일된 헤더와 Unity 빌드의 조합이 포함되어 있으며, 두 가지 모두 AGDE에서 잘 지원됩니다. 디버깅의 경우 Firemonkeys는 AGDE를 사용하여 C/C++ 코드를 디버그합니다. EA의 기술 이사인 패트릭 브로드데슨은 "디버깅 인터페이스와 성능에 만족합니다. 더 복잡한 문제가 발생할 때는 분해 뷰를 사용하며, AGDE는 이를 위한 훌륭한 도구를 갖추고 있습니다." 프로파일링과 관련하여 확장 프로그램 자체에서 Android 스튜디오 프로파일러를 빠르게 실행할 수 있는 기능 덕분에 기기별 문제를 살펴볼 때 프로파일링 프로세스가 더 쉽고 빨라졌습니다.

Firemonkeys의 엔지니어링팀은 이미 Visual Studio에 매우 익숙했으며 신규 또는 기존 프로젝트의 기존 워크플로에 AGDE를 통합하기까지 며칠 만에 완료할 수 있었습니다. 브로데슨은 "통합 프로세스는 간단하며, 확장 프로그램에는 안내를 위한 문서와 샘플 앱이 함께 제공됩니다.

AGDE 디버깅 진행 중 그림 2: 진행 중인 AGDE 디버깅

결과

Firemonkeys는 AGDE를 사용하여 개발 환경을 통합하고 여러 플랫폼과 기기 전반에서 빌드 파이프라인을 자동화할 수 있습니다. Firemonkeys는 AGDE를 통해 기존 Visual Studio IDE와 AGDE의 디버깅 인터페이스를 활용하여 Firemonkeys의 Android 개발 요구사항을 해결할 수 있었습니다. 브로데슨은 통합이 성공적이었으며 이전 워크플로에 비해 크게 개선되었다고 말합니다. "AGDE를 사용한 결과 새로운 Android 기능의 개발 시간이 가장 크게 줄어들었으며, 복잡한 Android 관련 버그를 디버깅하는 데 걸리는 시간도 줄었습니다." Firemonkeys팀은 AGDE를 사용하면 새 프로젝트, 특히 Visual Studio를 기본 IDE로 이미 설정한 크로스 플랫폼 프로젝트의 경우 유지보수 작업이 줄어들고 설정 시간이 단축된다는 사실을 발견했습니다. "AGDE를 사용하면서 얻은 가장 큰 이점은 여러 IDE와 디버깅 도구 간에 전환할 필요가 없어 엔지니어링팀의 컨텍스트 전환을 최소화할 수 있다는 점입니다."

Firemonkeys는 전반적으로 AGDE의 빌드, 디버깅, 프로파일링 도구를 사용하면 Android 관련 기능의 개발 비용이 10~15% 절감될 것으로 예상합니다. 브로데슨은 "팀의 엔지니어링 워크플로에서 발생하는 장애물이 줄어 비용이 절감되었습니다."라고 말했습니다.

시작하기

Visual Studio에서 C/C++로 크로스 플랫폼 게임을 빌드할 때 Android 게임 개발 확장 프로그램을 사용하여 Android를 타겟팅하는 방법을 알아보세요.