[go: up one dir, main page]

작성자: Suzanne Frey (VP, Product, Android Security and Privacy)

이 글의 원문은 여기서 확인하실 수 있습니다. 



구글플레이에 곧 도입될 ‘데이터 프라이버시 및 보안 섹션’에 대한 추가 정보를 공유 드립니다. 구글은 보안을 기본으로 제공하고 설계상 개인정보를 보호하며 자신의 데이터를 직접 통제할 수 있는 제품을 사용할 때 사용자가 온라인상 안전함을 느낀다는 것을 잘 알고 있습니다. 이번에 새롭게 추가되는 섹션은 개발자가 사용자에게 앱의 전반적인 보안 상태를 보여줄 수 있는 간단한 방법을 제시합니다. 이 섹션을 통해 개발자는 사용자가 앱을 설치하기도 전에 앱이 수집할 수 있는 데이터와 수집 목적을 설명하는 것은 물론 개인정보보호 및 보안에 대한 심도깊은 인사이트를 제공할 수 있습니다. 


궁극적으로 구글 플레이스토어의 모든 앱은 데이터 프라이버시 및 보안 섹션에서 정보를 공유해야 합니다. 구글은 개발자들이 이러한 변화에 적응하는 데 충분한 시간을 가질 수 있도록 새로운 기능의 데이터 유형 정의, 사용자 안내사항, 정책 요구사항에 대한 자세한 정보를 제공할 계획입니다. 




새로운 데이터 프라이버시 및 데이터 프라이버시 및 보안 섹션의 특징

(이미지) 개발자는 핵심 개인정보보호 및 보안 상태를 일목요연하게 보여줄 수 있습니다



앱의 스토어 목록 페이지에서는 보안 상태에 대한 요약이 새롭게 제공됩니다. 여기에는 앱이 수집하거나 공유하는 데이터에 대한 개발자의 설명과 함께 다음과 같은 세부 보안 사항이 표시됩니다.


  • 앱 내 데이터 암호화 등 보안 적용 여부

  • 앱의 구글 가족 정책 준수 여부

  • 글로벌 보안 기준에 대한 독립 검증 여부



(이미지) 개발자는 사용자가 안심하고 앱을 다운로드할 수 있도록

앱이 수집하는 데이터와 수집 목적을 공유할 수 있습니다. 


보안 상태에 대한 요약에서는 이용자들이 다음과 같은 세부 정보를 확인할 수 있습니다.


  • 위치, 연락처, 개인정보(예: 이름, 이메일 주소), 금융 정보 등 수집 및 공유되는 데이터 유형

  • 앱 기능, 개인 설정 등을 위한 데이터 사용 방식

  • 앱 사용을 위해 데이터 수집이 선택사항인지 필수사항인지 여부 




(이미지) 개발자는 데이터가 어떻게 사용되는지 설명할 수 있습니다. 



개발자들은 데이터에 대한 컨텍스트는 물론 앱이 자동으로 데이터를 수집하는 지 여부와 데이터 수집이 선택 사항인지에 대한 자세한 정보를 제공할 수 있게 되었다는 점에 대해 반가워하고 있습니다.  구글은 사용자들이 자신의 데이터가 다른 회사에 공유되는 지 여부와 공유 목적에 대해 관심을 갖고 있다는 점에 대해서도 잘 알고 있습니다. 

신설되는 섹션의 최종 내용은 개발자들과 지속적으로 협업해 개발자와 사용자 경험을 가장 잘 반영한 내용을 설계하는 과정에서 변경될 수 있습니다.


데이터 프라이버시 및 보안 섹션 지원을 위한 정책 변경

오늘 구글은 사용자에게 더 높은 투명성을 제공하고 사용자가 데이터 수집, 보호, 사용 방식에 대한 정보에 입각해 결정을 내릴 수 있도록 새로운 데이터 정책을 발표했습니다. 새로운 사용자 데이터 정책에는 다음과 같은 내용이 포함됩니다. 


  • 모든 개발자는 개인정보처리방침을 제공해야 합니다. 이전에는 개인정보와 민감한 사용자 데이터를 수집하는 앱에서만 개인정보처리방침을 공유해야  했습니다. 

  • 개발자는 데이터 프라이버시 및 보안 섹션에 앱의 써드파티 라이브러리나 SDK에서 사용하는 데이터 등 정확하고 완전한 정보를 제공해야 할 책임이 있습니다.

이 정책은 구글플레이에 등록된 모든 앱(구글 자사 앱 포함)에 적용됩니다.



향후 일정

구글은 개발자들에게 변화에 대비할 수 있는 충분한 시간과 자원을 제공할 계획입니다. 


목표 일정. 구체적인 일정은 변경될 수 있습니다. 

(이미지) 5월 21일 사전 발표 / 7월 21일 정책 내용 공유 / 10월 21일 개발자, 구글플레이 콘솔에 정보 등록 시작 / 2022년 1분기 사용자, 구글플레이에서 새로운섹션 확인 가능 / 2022년 4월 개발자, 정보 등록 마감


10월부터 개발자들은 구글플레이 콘솔에 정보를 제출해 리뷰를 받을 수 있습니다. 실행 과정에서  문의사항이 생길 것을 감안해 일찍 준비를 시작하시는 것을 권장합니다. 2022년 1분기에는 구글플레이에 있는 앱 내에서 새로운 데이터 프라이버시 및 보안 섹션을 확인할 수 있습니다. 

구글은 일부 개발자의 경우 앱을 평가하고 여러 팀과의 조율을 위해 더 많은 시간이 필요할 수도 있다는 것을 인지하고 있습니다. 이에 따라 이 정책을 준수해야 하는 마감 시점을 2022년 2분기로 정했습니다. 데이터 프라이버시 및 보안 섹션을 승인 받지 못한 경우 새로운 앱 제출이나 업데이트가 어려워질 수 있습니다.




2022년 1분기 구글이 데이터 프라이버시 및 보안 섹션을 론칭할 때 까지 해당 정보에 대한 승인을 받지 못한 앱에는 “정보 없음”이라고 표시됩니다.



준비 방법:

  • 플레이 콘솔 지원 센터에 방문해 데이터 유형 목록과 예시 등 플레이 콘솔의 앱 개인정보보호 정보 제공에 대한 세부 내용을 확인하십시오.

  • 앱이 데이터를 수집, 보호, 공유하는 방식에 대해 검토하십시오. 특히 앱에서 명시한 권한과 앱이 사용하는 API와 라이브러리를 점검하십시오. 이 과정에서 앱이 특정 유형의 데이터를 수집 및 공유하는 내용을 명시해야 할 수 있습니다.

  • 정책 웨비나에 참여하고 사전 질의를 보내주시기 바랍니다. 글로벌, 인도, 일본, 한국 세션에 등록할 수 있습니다.


구글은 앞으로 몇 달간 세부 일정을  포함한 자세한 지침을 계속 공유할 계획입니다. 


새로운 기능을 구축하고 구글플레이가 모두에게 보다 안전하고 신뢰할 수 있는 플랫폼으로 성장하도록 지속적으로 협력해주신 개발사 여러분께 진심으로 감사드립니다.


게시자: Greg Hartrell (Product Management Director, Google Play & Android)  

이 글의 원문은 여기서 확인 가능하며 블로그 리뷰에는 노현석(GDE)님이 참여해주셨습니다.




작년에 사람들이 집에서 게임을 하는데 더 많은 시간을 보내게 되면서 Android와 Google Play는 새로운 정점에 이르게 되었습니다. Google은 사용자를 위해 Google Play를 지속적으로 개선하면서, 게임 개발자가 전 세계의 다양한 사용자와 연결될 수 있는 플랫폼으로 만들어나가고 있습니다. 실제로 Android의 월간 활성 기기의 수는 30억 대까지 증가했으며, Google Play의 다운로드 수는 전 세계에 걸쳐 1,400억 건에 달하며 월간 활성 사용자 수는 25억 명으로 늘어났습니다.

 

Google은 주요 게임 스튜디오부터 혁신적이고 재미있는 게임을 만들어내는 인디 개발자에게 이르기까지, 전 세계의 개발자가 적절한 타이밍에 게이머에게 다가갈 수 있도록 사용자 모두를 위한 환경을 만들고 있습니다. 

 

Google for Games Developer Summit에서 저희는 게임 비즈니스의 전반을 지원하는 다양한 도구와 솔루션에 대한 최신 업데이트 소식을 공유해드렸습니다. 또한 게임을 더 쉽게 개발하도록 지원하는 도구 뿐 아니라, 더 다양한 기기에서의 게임 제공이 가능하도록 돕는 생태계에 대한 업데이트 소식과 Google Play에서 성공적으로 시장에 진입하는 새로운 방법에 대해서도 함께 말씀드렸습니다. 

 

저희가 Developer Summit에서 공유드린 모든 내용과 더불어 오늘부터 바로 시작할 수 있는 방법을 아래에서 자세히 알려드리겠습니다. 

 

더욱 더 간단해진 개발

  • Google은 양질의 Android 게임을 개발, 최적화 및 제공하는 데 도움이 되는 도구 및 라이브러리 모음인 Android Game Development Kit(AGDK)를 출시했습니다. 이번 첫 출시에서 AGDK는 다음 세 가지 주요 영역을 다룹니다.

1. 통합된 워크플로(예: 새로운 Visual Studio 확장 프로그램)

2. Essential C/C++ 게임 라이브러리(예: 새로운 Games Text Input 라이브러리)

3. 성능 최적화(예: GPU 프로파일러의 프레임 프로파일러 지원 및 Android Performance Tuner의 새로운 로드 시간 지원)

  • Android 12에서는 다음 두 가지 새로운 기능이 추가될 예정입니다. 게임 대시보드는 게임플레이 중에 화면 캡처, 녹화 등 주요 유틸리티에 빠르게 액세스할 수 있는 오버레이 환경을 제공하며 올해 하반기에 일부 기기에서 제공될 예정입니다. 또한 게임 모드 API를 사용하면 플레이어가 긴 통근 시간 동안 배터리 수명을 늘리거나 프레임 속도를 높이기 위해 성능 모드를 사용하는 등 게임을 위해 선택하는 성능 프로필에 맞게 대응할 수 있습니다. 출시를 통해 Android 12 출시 전 게임 모드 API를 통합해 보세요.

  • 도달범위 및 기기는 개발자가 Google Play에서 더 많은 성공을 위해 계획하는 데 도움이 되는 새로운 데이터 및 통계 도구입니다. 도달범위 및 기기는 국가 및 주요 기기 관련 속성(Android 버전, 메모리, 그래픽 스택 및 칩셋 등)에 걸쳐 나타나는 사용자 및 기술 문제의 분포 양상을 이해하고 예측할 수 있도록 합니다. 이를 활용하여 개발자는 국가 및 기기 타겟팅과 관련된 결정의 사업성을 검토하고, 최적화를 위한 기회를 파악하고 다음 출시를 앞두고 먼저 테스트해야 하는 부분을 확인할 수 있습니다.

  • Firebase 원격 구성을 사용하면 새 버전을 출시하지 않고도 다양한 잠재고객 세그먼트를 위한 게임의 행동과 모양을 업데이트할 수 있습니다. 새로운 개인 맞춤설정 도구 기능이 이제 Firebase 알파 프로그램을 통해 사전 체험판으로 제공됩니다. 개인 맞춤설정 도구는 Google의 머신러닝 기능을 이용하여 사용자별 최적의 환경을 자동으로 제공합니다.

 

더 많은 기기를 대상으로 제공

  • 지난해 Chrome OS에서 Google Play 사용량이 300% 증가하여 2016년 Chromebook에서 Google Play를 출시한 이래로 최대의 앱 및 게임 사용량을 기록하였습니다. Unity는 최근 Unity 2021.2에 Chrome OS에 대한 지원을 도입했으며 Unity 2020 LTS에 대한 지원은 올해 말에 제공될 예정입니다. Chrome OS를 대상으로 앱을 빌드하는 개발자는 점점 늘고 있으니, 여러분의 게임을 최적화하여 빠르게 늘어나는 사용자에게 다가가세요.

 

성공적인 시장 진입


  • Android 12의 핵심 기능인 다운로드하며 플레이는 백그라운드에서 게임 애셋이 다운로드되는 동안 단 몇 초 만에 사용자가 게임을 플레이할 수 있도록 합니다. Google은 이 기능 덕분에 게임을 시작할 수 있는 시간이 최소 2배 이상 빨라진다는 결과를 확인했으며, 사용자 환경이 향상되어 매우 기쁘게 생각하고 있습니다. 

  • Google은 Play Asset Delivery를 통해 게임 품질을 저하시키지 않으면서 플레이어가 다운로드를 기다리는 시간을 줄일 수 있도록 지속적으로 혁신을 거듭해왔습니다. 이제 텍스처 압축 형식 타겟팅은 게임 크기를 더욱 줄이기 위해 사용할 수 있는 최신 압축 형식을 자동으로 파악합니다.

  • 이제 Play Console의 평점 리뷰에서는 다양한 폼 팩터의 뷰를 통해 게임의 평점을 파악하고 평점 기록에 액세스 및 쿼리하고 새로운 평점 기록 측정항목을 통해 게임 평점을 이해할 수 있도록 여러 방법을 제공합니다.

  • Play 스토어의 사전 등록이 좀 더 유용하게 활용할 수 있도록 개선했습니다. 이제 사전 등록 유도 앱 캠페인을 사용하여 공개 테스트 단계의 게임에 대한 기대감을 높이거나 Play 스토어에서 진행 중인 사전 등록을 홍보할 수 있습니다.

  • 새로운 Play Integrity API는 사용자가 공식 Android 기기에서 Google Play를 통해 설치된 공식 게임 바이너리를 통해 상호작용하는 중인지 판단할 수 있도록 지원하여 부정행위 및 무단 사전 액세스와 같은 악용에 대응할 수 있도록 설계되었습니다. Play Integrity API 사전 체험판 프로그램에 관심이 있다면 참여를 신청해 주세요.

 

모바일 세션 트랙을 통해 Google for Games Developer Summit의 전체 세션 라인업을 확인하고 g.co/android/games를 북마크에 추가하여 Android 게임 개발에 관한 최신 자료를 살펴보세요.





작성자: Scott Carbon-Ogden(Android 게임 제품 관리자)

이 글의 원문은 여기서 확인하실 수 있으며 블로그 리뷰에는 백정상(Google)님이 참여해주셨습니다. 

 

오늘 Google에서는 고품질의 Android 게임을 개발, 최적화, 배포하는 데 효과적인 종합 툴 및 라이브러리인 Android Game Development Kit(AGDK)를 출시했습니다.

 

AGDK에는 다음의 세 가지 주요 원칙에 기반한 특징이 있습니다.


  • 게임 개발을 위해 빌드된 코드: 모든 라이브러리는 C 또는 C++ API를 사용해 빌드되었고 성능을 고려한 테스트를 통과했습니다.
  • 파편화 줄이기: AGDK 도구 및 라이브러리는 여러 가지 다양한 Android 버전에서도 호환됩니다. 도구 및 라이브러리의 대부분 기능들도 오늘날 사용되는 거의 모든 기기에서 실행됩니다.
  • Android에 의한, Android를 위한 빌드: 향후 Android 플랫폼 업데이트를 통해 기능이 개선될 예정이며, 라이브러리는 가능할 경우 하위 호환성을 제공합니다.

 

이번 첫 출시에서는 개발자 커뮤니티로부터 많은 피드백을 받았던 세 가지 주요 영역인 통합 워크플로우, C/C++ 게임 라이브러리, 성능 최적화에 초점을 맞추고 있습니다.

 

통합 워크플로우

일반적으로 도구 전환이 적을수록 효율을 높일 수 있습니다. 따라서 AGDK에서는 개발자가 선호하는 IDE에서 Android 개발을 지원할 수 있는 도구를 새롭게 제공하고 있습니다. 앞으로 워크플로우 요소에 주력할 예정이며, 고유한 가치를 더해 Android 문제를 해결하면서도 기존에 편안하게 사용하던  워크플로우를 그대로 사용할 수 있도록 지원할 것입니다.


  • Android Game Development Extension은 Visual Studio에서 Android 게임을 더욱 효율적으로 개발할 수 있는 도구입니다. 이를 통해 평소 사용하던 크로스 플랫폼 Visual Studio 게임 프로젝트를 Android에 새로운 플랫폼으로서 빠르게 통합할 수 있습니다. 더 자세한 내용은 AGDE 세션에서 확인하세요.
  • Google에서는 실력있는 게임 엔진 개발자들과 협력하여 도구 및 라이브러리를 직접 통합하고 있기 때문에, 별도의 변경 없이도 향상된 성능과 안정성을 경험할 수 있습니다.
  • 통합이 어려운 경우에는 Unity 같은 게임 엔진 플러그인을 빌드하는 데 주력했습니다. 이러한 플러그인들은 필요한 것을 빠르게 얻을 수 있도록 한 곳에서 제공됩니다.

 

C/C++ 게임 라이브러리

자바 네이티브 인터페이스(JNI)를 줄이고 C/C++ 개발용 게임 라이브러리를 사용해 C 개발을 시작합니다. 대부분 게임 및 게임 엔진은 C++로 작성되는 반면 Android 개발에서는 자바 프로그래밍 언어를 사용해야 하는 경우가 많습니다. 하지만 자바 네이티브 인터페이스를 사용해 두 언어를 연결하려면 번거로울 뿐만 아니라 버그나 성능 회귀(performance regressions) 같은 문제가 발생할 수 있습니다. AGDK는 C 게임 라이브러리를 제공하여 자바 프로그래밍 언어 및 JNI 사용을 최소화하기 때문에 게임 엔진을 빌드하고 맞춤설정하는 데 효과적입니다. 따라서 더욱 쉽게 게임을 빌드하고, 디버깅하고, 유지할 수 있습니다.

 

Google에서는 개발자분들이 가장 많이 제기해주신 문제들을 해결하는 데 힘쓰고 있습니다. 단기적으로는 작업 및 입력에 필요한 기본 클래스 빌드가 여기에 포함됩니다. 장기적으로는 C 라이브러리를 추가로 만들어 여러 게임 엔진에서 공통적으로 사용할 수 있는 기능을 제공할 계획입니다. 그 밖에도 기존 프레임 속도와 고성능 오디오 라이브러리를 통합하는 동시에 다음과 같은 세 가지 라이브러리를 새롭게 추가하려고 합니다.


  • 게임 액티비티는 C++ 게임을 빌드할 수 있는 기반을 제공합니다. 화면 회전부터 앱 수명 주기에 이르기까지 개발자가 예상하는 Android 이벤트마다 C 인터페이스를 제공합니다. 이를 통해 자바 언어를 사용해야 하는 개발 시간을 최소화할 수 있습니다. 네이티브 액티비티와 달리 게임 액티비티는 프래그먼트와 호환될 뿐만 아니라 확장도 가능하기 때문에, 개발자가 선호하는 SDK와의 통합이 더욱 쉽습니다.
  • 게임 텍스트 입력은 C에서 소프트웨어 키보드를 안정적으로 사용할 수 있는 방법을 제공하며, 현재 공식적으로 지원되고 있고, 앞으로 여러 Android 버전에서도 지원될 예정입니다.
  • 게임 컨트롤러는 C에서 게임 컨트롤러의 입력 정보를 처리하고, 기능을 매핑하고, 필요할 때 기기에 다시 연결할 수 있는 방법입니다.

 

이러한 라이브러리에 대한 자세한 내용은 C/C++ 라이브러리 세션에서 확인할 수 있습니다.

 

최대한 손쉽게 통합할 수 있도록 모든 라이브러리를 Maven 종속 항목이나, 사전에 컴파일된 Zip 파일로, 혹은 소스 코드로 가져올 수 있습니다.

 

성능 최적화

Google의 목표는 출시 이전에 안정성 또는 성능 문제를 발견하고, 출시 이후에도 게임을 모니터링하여 어떠한 문제든 포착하도록 지원하는 데 있습니다. 이를 위해 처음에는 프레임 속도, 로드 시간, 메모리 등 가장 중요한 측정항목부터 시작하지만, 앞으로 시간이 지나면서 다른 측정항목을 새롭게 추가할 예정입니다.


  • Google에서는 Android GPU 검사기(AGI)를 출시하면서 프레임 프로파일링 기능을 추가했습니다. 이 기능은 기존 GPU 프로파일링 요소와 함께 GPU 관련 문제를 철저히 분석하는 데 도움이 될 것입니다. AGI는 현재 오픈 베타 기간이며, 자세한 내용은 GPU 검사기 세션에서 확인할 수 있습니다.
  • Google에서는 Android 스튜디오와 AGDE에 시스템, 전력, CPU에 효과적인 프로파일러 세트(suite of profilers)를 보유하고 있으며, 그 밖에도 게임 개발자들이 비효율을 찾아내는 데 사용할 수 있는 기본 메모리 프로파일러를 새롭게 제공하고 있습니다.
  • Android Performance Tuner에서는 사용자 원격 분석이 가능합니다. 이 도구를 사용해 여러 게임 요소의 성능을 비롯해 다양한 기기를 대상으로 게임 성능을 알아볼 수 있습니다. 이미 프레임 속도를 분석하는 용도로 이 도구가 사용되고 있을 수 있습니다만, 여기에 더해 이번에 로드 시간 기능이 새롭게 출시됩니다. 자세한 내용은 Android Performance Tuner 세션에서 확인해보세요.

 

g.co/android/AGDK에서 Android 게임 개발용 최신 리소스에 대해 자세히 알아보고 AGDK를 다운로드하세요. Google for Games 개발자 서밋의 전체 세션은 모바일 세션 트랙에서 확인할 수 있습니다.


이 글의 원문은 여기서 확인하실 수 있으며 블로그 리뷰에는 노현석(GDE)님이 참여해주셨습니다. 


Electronic Arts(EA)는 미국 캘리포니아에 본사를 두고 있는 게임 회사로 스포츠, 액션, 레이싱, 시뮬레이션 등 여러 장르의 다양한 게임을 만듭니다. EA 산하의 개발 스튜디오인 Firemonkeys는 Real Racing 3, The Sims FreePlay, Need For Speed: No Limits의 개발사로 잘 알려져 있습니다.

Firemonkeys는 맞춤 게임 엔진을 사용해 게임을 개발하고 있으며, 현재 모든 Android 게임의 개발 워크플로에서 Android Game Development Extension(AGDE)을 사용하고 있습니다. Firemonkeys에서는 개발에 필요한 노력과 비용을 절감하기 위해 개발 및 디버깅 워크플로를 간소화할 방법을 찾고 있었는데, AGDE를 통해 해결할 수 있었습니다.

이미지1. The Sims: Freeplay 스크린샷


활용 방안

Firemonkeys는 모든 테스트용 Android 빌드 제작은 물론 Android에서 기본 C/C++ 코드를 디버깅할 때도 AGDE를 사용했습니다. 이들의 게임 개발 워크플로에는 컴파일 시간 개선을 위해 사전에 컴파일된 헤더와 Unity 빌드의 조합이 포함되어 있는데, 이 두 가지 모두 AGDE에서 지원됩니다. Firemonkeys에서는 AGDE를 사용해 C/C++ 코드를 디버깅할 때가 많았습니다. EA의 테크니컬 디렉터인 Patrick Broddesson은 “저희는 AGDE의 디버깅 인터페이스와 성능에 만족하고 있습니다. 복잡한 문제가 있을 때 디스어셈블리 뷰를 사용하는데, AGDE는 여기에 적합한 도구를 갖추고 있습니다.”라고 말했습니다. 프로파일링과 관련하여 확장 프로그램 자체에서 Android 스튜디오 프로파일러를 빠르게 실행할 수 있기 때문에 기기별 문제를 확인할 때 프로파일링 프로세스가 한층 더 쉽고 빨라집니다.

Firemonkeys의 엔지니어링팀은 이미 Visual Studio를 사용하는 데 매우 능숙했기 때문에, 신규 또는 기존 프로젝트에 대한 기존 워크플로에 AGDE를 통합하는 일은 며칠 만에 간단히 끝났습니다. Broddesson은 “통합 프로세스는 간단히 끝났습니다. 확장 프로그램에는 가이드라인으로 삼을 수 있는 도움말과 샘플 앱도 제공되었습니다.”라고 말했습니다.

 

AGDE debugging in progress

이미지 2. 진행 중인 AGDE 디버깅

결과

Firemonkeys는 AGDE를 사용함으로써 개발 환경을 통합하고 여러 플랫폼 및 기기에서 빌드 파이프라인을 자동화하고 있습니다. Firemonkeys는 또한 AGDE를 사용하여 기존의 Visual Studio IDE를 AGDE의 디버깅 인터페이스와 함께 활용하여 Firemonkeys의 Android 개발 요구사항을 해결하고 있습니다. Broddesson은 통합이 성공적으로 완료되었으며 워크플로가 기존에 비해 크게 개선되었다고 말합니다. “AGDE를 사용하면서 새로운 Android 기능의 개발 시간과 Android 고유의 복잡한 버그를 디버깅하는 데 드는 시간을 줄일 수 있었습니다.” Firemonkeys 팀은 AGDE를 사용하면서 앱 유지관리 비용을 줄였고 신규 프로젝트의 준비 시간도 단축했습니다. 특히 Visual Studio를 기본 IDE로 사용해 이미 설정된 크로스 플랫폼 프로젝트에서 이러한 성과는 두드러졌습니다. “AGDE를 통해 얻은 가장 큰 수확은 여러 가지 IDE와 디버깅 도구 간에 전환할 필요가 없어지면서, 엔지니어링팀의 컨텍스트 전환을 최소화할 수 있다는 것입니다.”

Firemonkeys에서는 AGDE의 개발, 디버깅, 프로파일링 도구를 사용함으로써 Android 전용 기능을 개발하는 데 드는 개발 비용이 전반적으로 10~15% 줄어들 것이라고 예상하고 있습니다. Broddesson은 "팀의 엔지니어링 워크플로를 방해하던 장애물이 사라지면서 비용을 절감할 수 있었습니다."라고 덧붙였습니다.



시작하기

Visual Studio에서 C/C++로 크로스 플랫폼 게임을 빌드할 때 Android Game Development Extension을 사용해 Android를 타겟팅하는 방법을 알아보세요.

이 글의 원문은 여기서 확인하실 수 있으며 블로그 리뷰에는 백정상(Google)님이 참여해주셨습니다.

Unreal Engine은 Epic Games에서 개발한 게임 엔진으로 게임 개발자들이 최첨단 엔터테인먼트, 매력적인 시각화, 몰입도 높은 가상 세계를 원하는 대로 자유롭게 구현할 수 있는 플랫폼입니다. 주요 Android 게임 중에도 Unreal Engine으로 빌드된 게임이 있습니다.

Screenshot of Unreal Engine Suntemple sample running on Pixel 4

이미지 1. Pixel 4에서 실행되는 Unreal Engine Suntemple 샘플의 스크린 샷 



Epic 및 다른 게임 개발자는 Android 스튜디오를 사용하여 C++, Kotlin 또는 자바 프로그래밍 언어를 디버깅하지만 게임 개발자 대부분은 Visual Studio를 중심으로 한 다른 플랫폼에서 개발 워크플로를 진행합니다.

Unreal Engine Mobile팀은 모바일 플랫폼용 Unreal Engine의 기능 개발과 최적화에 집중합니다. 이 팀에서는 Unreal Engine Android 개발과 Fortnite Android 디버깅 및 최적화에 Android 게임 개발 확장 프로그램(AGDE)을 사용하고 있습니다.



사용 방법

Android 게임 개발 확장 프로그램(AGDE)을 도입하기 전에는 Android용으로 디버깅 및 빌드하려면 생성된 Gradle 프로젝트를 Android 스튜디오에서 열고, 자체 키 바인딩 집합이 있는 두 가지 개발 환경 간에 전환하며 컴파일링 또는 디버깅해야 했습니다. 이 과정은 번거롭기도 했고 특히 반복 개발인 경우에는 시간도 너무 많이 소요되었습니다. 이제 AGDE를 사용하면 Android 게임의 개발 작업 주기 전체를 Visual Studio에서 진행할 수 있습니다! 새로운 개발 워크플로로 이전해보시면 Unreal Engine 개발이 훨씬 빠르고 편리하다는 것을 실감할 수 있습니다.

AGDE를 설치하면 Unreal Engine(UE) 4.26.2 이상에 사용할 Visual Studio 프로젝트 파일을 생성할 때마다 Unreal Build 툴이 AGDE에서 사용할 Android 빌드 타겟도 생성합니다.  그 이후 Android에서의 Visual Studio의 Unreal Engine 개발 및 디버깅 환경은 PC 및 기타 플랫폼과 동일합니다. Visual Studio에서 F5를 누르면 AGDE가 실행되고 이어서 C++ Android 빌드가 트리거되며 Android 애플리케이션 패키지(APK)가 생성 또는 업데이트됩니다. 그러면 AGDE가 기기에서 C++ 디버깅 세션을 시작하는데 이를 통해 중단점(breakpoints), 조사식(watches)과 같이 익숙한 Visual Studio 디버깅 기능을 사용하고 디스어셈블리 및 레지스터를 확인할 수 있습니다. AGDE 지원 Android 빌드는 Unreal Build 툴의 Incredibuild 통합을 활용하여 컴퓨터 전반에 Android C++ 코드용 배포 빌드도 제공합니다.


Screenshot of AGDE with Unreal Engine

이미지 2. AGDE를 도입한 Unreal Engine 스크린 샷



결과

“Visual Studio 중심 개발 환경에서 AGDE를 자사 워크플로에 통합할 수 있다는 소식에 매우 기대가 컸습니다. Fortnite와 Unreal Engine Mobile 엔지니어들이 업무에 매일 AGDE를 사용하고 있어요, AGDE 도입이 아주 성공적이었다고 생각합니다.” (Jack Porter, Unreal Engine Mobile 팀장) “AGDE를 활용해 Epic에서는 더 빠르고 편리하게 문제를 디버그하고 Visual Studio 안에서 모든 일을 할 수 있게 되어 기존 워크플로를 크게 개선할 수 있었습니다. AGDE를 사용하니 시간이 많이 절감되었고 다른 방법으로는 찾지 못했을 버그도 찾을 수 있었습니다.”

또 “Epic은 앞으로도 계속 AGDE를 사용할 예정이며 모든 Unreal Engine 라이선스 사용자에게 Unreal Engine Android 개발자 지원 워크플로로 AGDE를 권장하는 내용을 문서에 담을 계획입니다.”라고 덧붙였습니다.

Unreal Engine Mobile팀 개발자인 Dmytro Vovk는 Unreal Engine 및 Fortnite Mobile 관련된 일상적인 업무에 AGDE를 사용하고 있습니다. “AGDE는 정말 훌륭해요! 드디어 코드를 단계별로 살펴보듯 어셈블리를 디버그하고 레지스터가 업데이트 되는 것을 확인할 수 있게 되었어요. 익숙한 Visual Studio에서 Android 디버깅을 진행하니 매일의 업무가 훨씬 간편해지고 개발 흐름을 파악할 수 있습니다.”



시작하기

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