프로젝트 템플릿
Microsoft Game Development Kit (GDK)는 다음 Visual Studio C++ 프로젝트 템플릿을 설치합니다.- Direct3D 12 Desktop Game (Classic): ‘stock’ x64 MSBuild 플랫폼과 함께 Direct3D 12 및 C++를 사용하는 Windows 게임 프로젝트입니다.
- Direct3D 12 Desktop Game: Gaming.Desktop.x64 MSBuild 사용자 지정 플랫폼과 함께 Direct3D 12 및 C++를 사용하는 Windows 게임 프로젝트입니다.
- Direct3D 12 Desktop Game Makefile: 외부 빌드 시스템을 사용하여 Direct3D 12 및 C++를 사용하는 Windows 게임 프로젝트입니다.
- Desktop Static Library: Gaming.Desktop.x64 MSBuild 사용자 지정 플랫폼과 함께 사용하는 Windows 정적 라이브러리 프로젝트입니다.
- Desktop DLL: Gaming.Desktop.x64 MSBuild 사용자 지정 플랫폼과 함께 사용하는 Windows 동적 링크 라이브러리 프로젝트입니다.
독립형 템플릿
데스크톱 및 핸드헬드 개발에 설치된 GDK 템플릿을 사용하는 대안으로, vc Package Manager를 사용하여 Microsoft GDK, DirectX 12 Agility SDK 등의 패키지된 버전을 추가하는 완전히 독립적인 프로젝트 템플릿이 있습니다. 이는 Microsoft Store 및 XBOX PC 앱에 출시하기 위한 기준선으로 사용할 수 있습니다. 이 패키지에는 MSBuild와 CMake 프로젝트 템플릿이 모두 포함되어 있으며, Visual Studio 2022 v17.6 이상이 필요합니다. Visual Studio 마켓플레이스를 참조하세요.Microsoft Game Development Kit (GDK) 프로젝트 템플릿 찾기
Visual Studio 2019 또는 Visual Studio 2022의 새 프로젝트 만들기 대화 상자에서 검색 및 필터링하여 Microsoft Game Development Kit (GDK) 템플릿을 찾을 수 있습니다. 다음 스크린샷과 같이 C++ 언어, Windows 플랫폼, Games 프로젝트 유형으로 필터링하여 Microsoft Game Development Kit (GDK) 템플릿을 찾을 수 있습니다.Gaming.Desktop.x64 플랫폼, msbuild 파일 및 속성
Microsoft Game Development Kit (GDK)는 Windows PC 게임 개발에 사용할 Gaming.Desktop.x64라는 msbuild 플랫폼을 정의합니다. Gaming.Desktop.x64에는 필수 전처리기 지시문(예:_GAMING_DESKTOP)을 정의하는 msbuild 속성 및 대상 파일 집합이 포함되어 있으며, 예를 들어 게임을 빌드할 때 확장 라이브러리, 포함 파일 및 라이브러리가 C:\Program Files (x86)\Microsoft GDK\edition\GRDK 아래에서 올바르게 발견되도록 경로가 설정됩니다. Gaming.Desktop.x64 플랫폼에서 정의된 msbuild 속성 및 대상에 대한 구체적인 자세한 내용은 Microsoft Game Development Kit을 설치하지 않고 프로젝트 구성을 참조하세요.
Microsoft Game Development Kit (GDK)와 함께 x64 플랫폼 사용
사용자 지정 Gaming.Desktop.x64 MSBuild 플랫폼을 사용하지 않고 PC를 대상으로 할 때, 프로젝트 파일은 필요한 모든 기능을 구현해야 합니다.- ‘병렬’ 설치를 지원하려면 프로젝트가 적절한 에디션을 선택해야 합니다. 이는 Globals 섹션에 속성을 설정하여 수행할 수 있습니다.
GRDKLatest 환경 변수를 사용하면 기본적으로 개발 PC에 설치된 최신 에디션이 되며, 형식은 **C:\Program Files (x86)\Microsoft GDK<edition>\GRDK\**입니다.
나머지 빌드 설정에서는 GDKPCEditionPath 속성을 사용합니다. 나머지 프로젝트 파일에서VS 2019의 경우 도구의 x64 네이티브 버전을 반드시 사용해야 합니다. VS 2022의 경우 이것이 기본값이므로 선택 사항입니다.GRDKLatest를 속성으로 직접 사용하는 것은 새 릴리스 시도, 업데이트 관리, 문제 재현 등을 어렵게 만들기 때문에 권장되지 않습니다. 사용자 지정 .props 파일을 사용하여 빌드 프로세스를 이끌고 있다면, 각 프로젝트 파일 대신GDKPCEditionPath를 거기에 배치하세요. 이 속성은 MSBuild 규칙을 충족하기 위해 뒤에 슬래시가 필요합니다.
- 필요한 Microsoft Game Development Kit (GDK) 확장 라이브러리에는 필요에 따라 적절한 include/lib 경로와 재배포 DLL이 포함되어야 합니다. 이는 vcxproj 파일의 ExtensionSettings 가져오기를 수정하여 수행할 수 있습니다.
- VC++ 디렉터리 속성 ExecutablePath, IncludePath, LibraryPath는 Microsoft Game Development Kit (GDK) 경로를 포함하도록 업데이트되어야 합니다.
GameDK 환경 변수를 직접 사용합니다. 필요한 경우 사용자 지정 .props 파일의 속성으로 재정의할 수도 있습니다.
Console_SdkIncludeRoot 및 Console_SdkLibPath 속성은 x64 PC 및 XBOX 모두와 호환되는 Microsoft Game Development Kit (GDK) _ExtensionLibrary.props_에 의해 제공됩니다.
- 플랫폼 _ItemDefinitionGroups_의 경우 라이브러리나 기타 미들웨어를 사용할 때 Gaming.Desktop.x64와의 일관성을 위해 전처리기 정의에
_GAMING_DESKTOP을 추가해야 합니다.
- 또한 _ItemDefinitionGroups_에서 다음 라이브러리를 추가 라이브러리 종속성에 추가하세요. 구체적으로 GameRuntime용
xgameruntime.lib와 PC의 GameInput용gameinput.lib.
- 마지막 필수 요소는 소스 MicrosoftGameConfig.mgc 파일을 빌드 출력의 필수 MicrosoftGame.config로 변환하는 것입니다. 이는 빌드 사용자 지정으로 구현할 수 있습니다.
Direct3D 12 Desktop Game (Classic) 템플릿에서 프로젝트를 만들고 위의 설정과 몇 가지 추가 권장 사항에 대해 검토하세요.
