다음을 통해 공유


Visual Studio에서 Microsoft 게임 개발 키트를 사용하여 새 타이틀 개발

이 항목에서는 새 Microsoft GDK(게임 개발 키트) 프로젝트를 만드는 방법을 설명합니다.

Microsoft GDK(게임 개발 키트)에서 개발된 게임 타이틀은 PC, Xbox 본체 또는 두 플랫폼 모두를 대상으로 할 수 있습니다(공통 코드베이스가 사용되는 경우). 이러한 게임 타이틀은 각 플랫폼 고유의 기능을 이용하도록 설계된 기능을 가질 수도 있습니다. 개발자가 어느 대상 플랫폼과 장치 확장을 사용할지(그리고 얼마나 광범위하게 사용할지) 선택합니다.

Microsoft GDK(게임 개발 키트)용 Visual Studio 프로젝트 템플릿 시작

Visual Studio가 설치된 개발 컴퓨터에 GXDK(게임 확장 개발 키트)를 설치하면 다음 템플릿도 설치됩니다.

  • PC를 대상으로 하는 5가지 프로젝트 템플릿
  • Xbox 본체를 위한 네 개의 프로젝트 템플릿
대상 플랫폼 템플릿 설명
데스크톱 Direct3D 12 데스크톱 게임(클래식) Visual Studio 프로젝트 시스템에서 Gaming Runtime 및 기본 x64 MSBuild 플랫폼을 사용하여 실행 가능한 독립 실행형 PC 게임을 빌드하는 프로젝트를 만듭니다.
Direct3D 12 데스크톱 게임 Visual Studio 프로젝트 시스템에서 Gaming.Desktop.x64 사용자 지정 MSBuild 플랫폼을 사용하여 실행 가능한 독립 실행형 PC 게임을 빌드하는 프로젝트를 만듭니다.
Direct3D 12 데스크톱 게임 메이크파일 명령 프롬프트를 사용하여 메이크파일에서 PC 게임을 빌드하는 데 적합한 프로젝트 만들기
데스크톱 정적 라이브러리 Visual Studio 프로젝트 시스템에서 Gaming.Desktop.x64 사용자 지정 MSBuild 플랫폼을 사용하여 PC를 대상으로 하는 Microsoft 게임 개발 키트(GDK) 게임에 포함하기에 적합한 정적 라이브러리를 빌드하는 프로젝트를 만듭니다.
데스크톱 DLL Visual Studio 프로젝트 시스템에서 Gaming.Desktop.x64 사용자 지정 MSBuild 플랫폼을 사용하여 PC를 대상으로 하는 Microsoft 게임 개발 키트(GDK) 게임에 포함하기에 적합한 동적 연결 라이브러리를 빌드하는 프로젝트를 만듭니다.
본체 Direct3D 12 Xbox 게임 Visual Studio 프로젝트 시스템에서 Xbox 콘솔을 대상으로 하는 독립 실행형 게임 실행 파일을 빌드하는 프로젝트를 만듭니다.
Direct3D 12 Xbox 게임 메이크파일 명령 프롬프트를 사용하여 메이크파일에서 Xbox 콘솔 게임을 빌드하는 데 적합한 프로젝트를 만듭니다.
Xbox 정적 라이브러리 Visual Studio 프로젝트 시스템에서 Xbox 콘솔을 대상으로 하는 Microsoft GDK(게임 개발 키트) 게임에 포함하기에 적합한 정적 라이브러리를 빌드하는 프로젝트를 만듭니다.
Xbox DLL Visual Studio 프로젝트 시스템에서 Xbox 콘솔을 대상으로 하는 Microsoft GDK(게임 개발 키트) 게임에 포함하기에 적합한 동적 연결 라이브러리를 빌드하는 프로젝트를 만듭니다.

해당 템플릿에 액세스하려면 다음을 수행합니다.

  1. Visual Studio를 엽니다.
  2. 파일 -> 새로 만들기 -> 프로젝트를 선택합니다. 새 프로젝트 대화 상자가 표시됩니다.
  3. 새 프로젝트 대화 상자에서 모든 언어 필터를 C++로 설정하고 모든 플랫폼 필터를 Xbox 또는 Windows로 설정하고 모든 프로젝트 형식게임으로 설정합니다. 위의 프로젝트 이름으로도 검색할 수 있습니다.
  4. Microsoft GDK(게임 개발 키트) 프로젝트 템플릿 목록에서 원하는 프로젝트 템플릿을 선택합니다.
  5. 확인을 클릭합니다.

템플릿 선택

새 Microsoft GDK(게임 개발 키트) 프로젝트를 시작하는 경우 가장 먼저 해야 할 작업 중 하나는 사용할 Microsoft GDK(게임 개발 키트) 템플릿을 결정하는 것입니다. 선택은 게임이 PC 또는 Xbox를 대상으로 하는지, 둘 모두를 대상으로 하는지에 따라 달라집니다.

PC 전용 게임

Direct3D 12 데스크톱 게임 템플릿이 일반적인 시작 지점입니다. 템플릿의 몇 가지 주요 기능은 다음과 같습니다.

  • Kernel32.lib, user32.lib 등을 비롯한 일반적인 PC 라이브러리에 대한 Windows API 제품군 WINAPI_FAMILY_DESKTOP_APP 및 링크를 사용합니다. PC API의 전체 집합은 게임에서 사용할 수 있습니다.

  • 필요한 헤더와 라이브러리를 포함합니다. 템플릿은 PC와 호환되는 Direct3D 12 그래픽 구현을 추가할 준비가 되었습니다. 템플릿은 간단한 스왑체인, Direct3D 장치, 기본 게임 업데이트 및 렌더링 루프를 제공합니다.

  • XGameRuntime.h와 XGameRuntime.lib로의 링크를 포함합니다. 모든 Microsoft GDK(게임 개발 키트) 게임 런타임 기능을 사용할 준비가 완료되었습니다.

  • XSAPI(Xbox Live API) 확장 라이브러리도 기본적으로 사용할 수 있습니다. 추가 Microsoft 게임 개발 키트(GDK) 확장 라이브러리도 추가할 수 있습니다.

  • 플랫폼 'stock' x64 플랫폼 또는 사용자 지정 MSBuild 플랫폼 Gaming.Desktop.x64를 기반으로 하는 구성을 빌드 구성을 선언합니다. 이는 로컬 디버거를 사용하여 로컬(개발 컴퓨터)에서 반복할 것으로 예상되는 x64 대상을 빌드합니다.

  • 파트너 센터에서 타이틀 정보로 입력한 자리 표시자 정보로 MicrosoftGameConfig.mgc 파일을 만듭니다.

Xbox용 게임

Direct3D 12 Xbox 게임 템플릿이 일반적인 시작 지점입니다. 템플릿의 몇 가지 주요 기능은 다음과 같습니다.

  • Windows API 제품군 WINAPI_FAMILY_GAMES와 XGamePlatform.lib에 대한 링크를 사용하여 Xbox Game OS에서 지원되는 것으로 보장된 핵심 플랫폼 API 세트로 제한합니다.

  • 필요한 헤더와 라이브러리를 포함합니다. 이 템플릿은 Xbox 장치 전용 하드웨어 확장을 최대한 활용하는 D3D12 그래픽 구현을 추가할 준비가 되어 있습니다.

  • XGameRuntime.h와 XGameRuntime.lib로의 링크를 포함합니다. 모든 Microsoft GDK(게임 개발 키트) 게임 런타임 기능을 사용할 준비가 완료되었습니다.

  • XSAPI(Xbox Live API) 확장 라이브러리도 기본적으로 사용할 수 있습니다. 추가 Microsoft 게임 개발 키트(GDK) 확장 라이브러리도 추가할 수 있습니다.

  • 원격 디버깅을 위해 설정된 Xbox One ERA 개발 키트를 사용하여 게임을 반복할 것으로 예상되는 x64 대상을 빌드하는 MSBuild 사용자 지정 플랫폼 Gaming.Xbox.XboxOne.x64를 사용하는 빌드 구성을 선언합니다.

  • 파트너 센터에서 타이틀 정보로 입력한 자리 표시자 정보로 MicrosoftGameConfig.mgc 파일을 만듭니다.

PC와 Xbox용 게임

앞서 언급한 템플릿 중 하나에서 시작하여 프로젝트에서 두 번째 빌드 구성을 추가하는 것이 좋습니다. 예를 들어, Gaming.Desktop.x64 플랫폼을 위한 빌드 구성을 자동으로 포함하는 Direct3D 12 데스크톱 게임 프로젝트로 시작하면 플랫폼이 Gaming.Xbox.XboxOne.x64로 설정된 두 번째 빌드 구성을 추가할 수 있습니다. 프로젝트를 빌드하면 Microsoft Visual Studio는 PC용 게임과 Xbox 본체용 게임을 한 버전씩 빌드합니다.

이러한 권장 접근법은 소스 코드를 (#define/#ifdef(을)를 사용하거나 플랫폼별 코드를 별도의 DLL로 분할하여) 맞춤화할 것을 요구합니다. 예를 들어 게임의 PC 구성이 "스톡" Direct3D 12를 사용하도록 하거나 게임의 Xbox 구성이 장치 확장에 맞는 Direct3D 12.x를 사용하도록 합니다. Gaming.Desktop.x64Gaming.Xbox.XboxOne.x64 사이에서 활성 구성을 전환하면 어떤 디버거를 사용할지, 어떤 라이브러리를 연결할지와 같은 도구 설정이 적절하게 변경됩니다.

다음 단계

새 프로젝트를 만들어 GDK 설치를 확인한 후의 다음 단계는 PC 게임을 개발하는지 Xbox 게임을 개발하는지에 따라 달라집니다.

참고 항목

MicrosoftGameConfig Overview
Microsoft GDK(게임 개발 키트)(NDA 항목) 시작권한 부여 필요