この記事で説明する Microsoft Game Development Kit (GDK) の新しいヘッダーおよびライブラリのレイアウトは、October 2025 GDK でリリースされる予定です。この GDK のプレビュー ビルドに関心がある場合は、Microsoft のアカウント マネージャーにご連絡ください。
旧ヘッダー / ライブラリ レイアウト
Microsoft GDK の既存のファイル レイアウトは、次のようにまとめられます。新ヘッダー / ライブラリ レイアウト
October 2025 GDK リリースでは、プラットフォーム統合を容易にし、時間の経過とともに追加のプラットフォームに対応できる、ヘッダーとライブラリの新しい代替レイアウトが提供されます。MSBuild カスタム プラットフォームで新レイアウトを使用する
既存の Gaming.*.x64 MSBuild プラットフォームはデフォルトで古いレイアウトを使用しますが、GDKCrossPlatform プロパティを設定することで新しいレイアウトにオプトインできます。
プロジェクトは、消費する extension library を AdditionalDependencies に追加する必要があります(各ライブラリは「オプトイン」であるためです)。
プロジェクトは、使用する追加の DLL をレイアウトにコピーする必要もあります。これは、多くの DLL ライブラリ統合で一般的なカスタム ビルド ステップ、または vcxproj の編集や props ファイルの追加で ReferenceCopyLocalPaths アイテム グループ リストを使用することで実現できます。以下の MSBuild は考えられるすべての DLL を列挙していますが、個々のプロジェクトはそのうちの一部だけを必要とします。
GameDKLatest は、XBOX Extensions 付きの Microsoft GDK でのみ設定されます。そのため、両バージョンの Microsoft GDK のサイドバイサイド インストールを完全にサポートする新しい環境変数が導入されました: GameDKCoreLatest は Microsoft GDK によって設定されます。Directory.Build.props ファイルを使用する
既存の GDK Gaming.*.x64 プロジェクトを新しいレイアウトで素早く検証する方法として、次の内容を Directory.Build.props という名前のファイルに配置し、ソース ツリーに置いてください。これにより新しいレイアウトにオプトインし、プロジェクトで使用されていない場合でも、ほとんどまたはすべての extension library を含めます。GDKExtLibNames プロパティは、GDKCrossPlatform を true に設定してビルドする場合、MSBuild ルールで使用されません。古い MSBuild ルールでビルドするためにすでに存在しているため、この props ファイルではレイアウト内の一部の追加 DLL にオプトインする方法として使用されます。
x64 ゲームを ARM64 対応に更新する方法
既存の x64 ゲーム プロジェクトに ARM64 サポートを追加するには、次の手順に従ってください。- Visual Studio 2022 を使用します。 ARM64 サポートには Visual Studio 2022 が必要です。Visual Studio 2019 は ARM64 ビルドではサポートされません。
- 新しいレイアウトを有効化します。 プロジェクト ファイルで
GDKCrossPlatformをtrueに設定し、プロジェクトが新しいレイアウトを使用するようにします。 - ARM64 構成を作成します。 既存の x64 構成(Debug、Release など)をコピーして、対応する ARM64 構成を作成します。
- ライブラリ パスを更新します。 ARM64 構成の VC++ Directories を編集し、ライブラリ パスが
lib\x64ではなくlib\arm64を参照するようにします。 - XSAPI ライブラリ参照を更新します。 すべての 構成(ARM64 だけでなく)のリンク ステートメントを更新して、
Microsoft.Xbox.Services.142.GDK.C.libの代わりにMicrosoft.Xbox.Services.143.GDK.C.libを使用するようにします。 - ReferenceCopyLocalPaths を更新します。
.vcxprojファイル内のReferenceCopyLocalPathsの使用を確認し、x64の代わりにarm64bin フォルダーを参照するように更新が必要ないかチェックします。
タイトルの起動が 0xc000007b エラーで失敗した場合、誤って x64 形式の DLL を ARM64 プロセスに読み込もうとしていることを意味します。更新が必要な
ReferenceCopyLocalPaths アイテムがないか、プロジェクト システムを確認してください。MSBuild x64 プラットフォームで新レイアウトを使用する
Gaming.Desktop.x64 プラットフォームの代わりに、標準の x64 プラットフォームを使用して PC 向けにビルドできます。古いレイアウトでは、Using the x64 platform with the Microsoft Game Development Kit (GDK) で詳しく説明されているとおり、Extension Libraries 用に<Import Project="...\ExtensionLibrary.props"> ステートメントを追加する必要がありました。
新しいレイアウトでは、統合手順が簡素化されています。
CMake で新レイアウトを使用する
Microsoft Visual Studio ジェネレーターを CMake とともに使用し、Gaming.*.x64 カスタム MSBuild プラットフォームを使用する場合は、次のコードを使って新しいレイアウトを有効化してください。VS_GLOBAL_GDKExtLibNames の使用を削除し、(CMake 3.21 以降を前提として)次のコードに置き換えて、使用する extension DLL をレイアウトにコピーしてください。
カスタム ビルド システムで新レイアウトを使用する
GDK を使用して Windows x64 向けにビルドするには、次を実行します。インストール済みファイルからビルド エディションを読み取る
新しいレイアウトにはgrdk.ini ファイルは含まれていません。ファイルを解析してエディション情報を取得するには、grdk.h を使用してください。
以下は、古い GDK リリースでも機能する PowerShell の例です。
