게임 개발 기본사항

Android 게임 개발을 시작하기 전에 결정해야 하는 개발 환경 기본 구성요소에는 세 가지가 있으며 다음과 같습니다.

  • 게임 엔진
  • 통합 개발 환경(IDE)
  • 그래픽 API

게임 엔진으로 개발

게임 엔진은 게임 개발을 위한 라이브러리 및 도구 집합을 포함하는 소프트웨어 프레임워크입니다. 게임 엔진을 사용하면 게임 콘텐츠와 최적화에 집중하면서 다음과 같은 작업을 쉽게 구현할 수 있습니다.

  • 그래픽
  • 애니메이션
  • 사운드
  • 게임 루프
  • 입력 장치 지원

게임 엔진에는 일반적으로 기능을 구성하고 게임을 설계하고 개발하고 컴파일하여 Android와 다른 플랫폼에 내보내기 위한 IDE와 기타 도구가 포함되어 있습니다.

게임 엔진으로 작업하려면 다음 접근 방식 중에서 선택하면 됩니다.

  • 수정되지 않은 게임 엔진 사용(권장)
  • 기존 게임 엔진 맞춤설정
  • 새 게임 엔진 개발

수정되지 않은 게임 엔진으로 작업하는 것이 Android 게임을 개발하는 데 가장 간단한 접근 방식입니다. 이렇게 하려면 Android 개발 요구사항을 충족하는 게임 엔진을 선택해야 합니다.

수정 없이 사용할 수 있는 게임 엔진

다음은 Android 개발을 지원하는 몇 가지 기존 게임 엔진입니다.

  • Unity: 상업용. C# 프로그래밍 언어를 사용합니다.
  • Godot: 오픈소스. GDScript, C#, C++ 등 여러 프로그래밍 언어를 지원합니다.
  • Defold: 오픈소스. Lua 프로그래밍 언어를 사용합니다.
  • Unreal: 상업용. Blueprint 시각적 스크립팅 시스템과 C++를 사용합니다(고급 3D 그래픽 전문).

이러한 엔진을 설정하고 사용하는 방법에 관한 자세한 내용은 Android에서 게임 엔진 사용을 참고하세요.

IDE로 개발

Android 게임을 개발하는 데 사용하는 IDE는 사용하는 게임 엔진과 워크플로에 따라 다릅니다. 가장 일반적인 게임 엔진에는 설계와 코드 편집을 위한 게임 편집기가 포함되며, 이러한 게임 편집기는 일반적으로 게임 개발자가 Android 스튜디오와 함께 사용합니다.

게임 편집기

게임 편집기는 게임 디자인 기능을 코드 편집과 긴밀하게 통합하는 경우가 많습니다. 경우에 따라 이러한 편집기를 사용하면 디자이너가 코드를 작성하지 않고도 개발 작업을 완료할 수 있습니다.

첫 번째 Android 게임을 개발하는 경우 게임 편집기와 Android 스튜디오를 함께 사용하는 것이 가장 간단하고 좋은 방법입니다. 게임 편집기의 다음과 같은 특성 때문입니다.

  • 게임 디자인에 중점을 둔 UI와 도구 세트를 제공합니다.
  • 애셋 디자인과 코드 편집 작업을 통합합니다.
  • 지원되는 프로그래밍 언어에 중점을 둡니다.
  • 모델링 및 렌더링 도구를 포함합니다.

Android 스튜디오

Android 스튜디오는 Android 앱 개발을 위한 공식 IDE입니다. 사용하려는 다른 IDE와 함께 설치해야 합니다. Android 스튜디오를 사용하면 다음 작업을 할 수 있습니다.

  • C/C++, 자바 또는 Kotlin으로 작성된 코드 디버그
  • Android 게임을 빌드하는 데 사용해야 하는 Android SDK 관리
  • 게임 빌드, 테스트, 프로파일링, 최적화
  • Android NDK를 사용하여 C/C++ 코드 편집
  • 앱 패키지 및 Google Play 설정 구성

자세한 내용은 Android 스튜디오를 참고하세요.

Visual Studio

Visual Studio를 사용하여 Windows에서 게임을 개발하는 경우 Visual Studio용 Android 게임 개발 확장 프로그램(AGDE)을 사용하여 Android를 대상으로 추가할 수 있습니다. 고급 게임 개발자를 위한 이 옵션은 Visual C++ 프로젝트를 사용하여 이미 개발 중인 게임을 타겟팅합니다. AGDE를 사용하여 다음 작업을 할 수 있습니다.

  • 기존 Visual C++ 프로젝트를 사용하여 Android 게임을 만들 수 있습니다.
  • Visual Studio를 사용하여 게임을 디버그하고 프로파일링할 수 있습니다.
  • Incredibuild 또는 SN-DBS와 같은 분산형 빌드 시스템을 사용할 수 있습니다.

자세한 내용은 AGDE를 참고하세요.

그래픽 API로 개발

최상의 2D 및 3D 그래픽 성능을 얻으려면 Android 게임이 하위 수준의 그래픽 API를 사용하여 GPU와 통신할 수 있어야 합니다. Android 게임 개발에 가장 광범위하게 지원되는 옵션은 다음과 같습니다.

  • OpenGL ES
  • Vulkan

Android Game Development Kit(AGDK)를 사용하여 C 또는 C++로 게임을 개발하려면 OpenGL ES 또는 Vulkan이 필요합니다. Android GPU 검사기(AGI) 그래픽 프로파일링 도구에서 지원되는 유일한 두 가지 그래픽 API입니다.

Android GPU 검사기에 관한 자세한 내용은 AGI를 참고하세요.