Visual Studio の Microsoft Game Development Kit による新しいタイトルの開発
このトピックでは、Visual Studio で 新しい Microsoft Game Development Kit (GDK) プロジェクトを作成する方法について説明します。
Microsoft Game Development Kit (GDK) で開発するゲーム タイトルは、PC、Xbox 本体、または両方のプラットフォームを対象にすることができます (共通のコードベースが使用される場合)。 これらのゲーム タイトルは、各プラットフォーム固有の機能を活用することもできます。 ターゲット プラットフォームと、デバイスの拡張機能を使用するか (またどの程度使用するか) を選択します。
Microsoft Game Development Kit (GDK) 向けに Visual Studio のプロジェクト テンプレートの使用を開始する
Visual Studio が含まれる開発用コンピューターにゲーム拡張機能開発キット (GXDK) をインストールすると、以下のテンプレートもインストールされます。
- PC を対象とする 4 つのプロジェクト テンプレート
- Xbox 本体を対象とする 4 つのプロジェクト テンプレート
対象プラットフォーム | テンプレート | 説明 |
---|---|---|
デスクトップ | Direct3D 12 デスクトップ ゲーム (クラシック) | Visual Studio プロジェクト システムで、ゲーム ランタイムとストック x64 MSBuild プラットフォームを使用してスタンドアロン PC ゲーム実行可能ファイルをビルドするプロジェクトを作成します。 |
Direct3D 12 デスクトップ ゲーム | Visual Studio プロジェクト システムで、Gaming.Desktop.x64 カスタム MSBuild プラットフォームを使用してスタンドアロン PC ゲーム実行可能ファイルをビルドするプロジェクトを作成します。 | |
Direct3D 12 デスクトップ ゲーム メイクファイル | コマンド プロンプトを使用してメイクファイルから PC 向けゲームをビルドするために適したプロジェクトを作成します。 | |
デスクトップ スタティック ライブラリ | Visual Studio プロジェクト システムで、Gaming.Desktop.x64 カスタム MSBuild プラットフォームを使用して PC を対象とする Microsoft Game Development Kit (GDK) ゲームに含めるのに適したスタティック ライブラリをビルドするプロジェクトを作成します。 | |
デスクトップ DLL | Visual Studio プロジェクト システムで、Gaming.Desktop.x64 カスタム MSBuild プラットフォームを使用して PC を対象とする Microsoft Game Development Kit (GDK) ゲームに含めるのに適したダイナミック リンク ライブラリを構築するプロジェクトを作成します。 | |
本体 | Direct3D 12 Xbox ゲーム | Visual Studio プロジェクト システムで、Xbox 本体を対象とするスタンドアロン ゲームの実行可能ファイルをビルドするプロジェクトを作成します。 |
Direct3D 12 Xbox ゲーム メイクファイル | コマンド プロンプトを使用してメイクファイルから Xbox 本体向けのゲームをビルドするために適したプロジェクトを作成します。 | |
Xbox スタティック ライブラリ | Visual Studio プロジェクト システムで、Xbox 本体を対象とした Microsoft Game Development Kit (GDK) ゲームに含めるために適したスタティック ライブラリをビルドするプロジェクトを作成します。 | |
Xbox DLL | Visual Studio プロジェクト システムで、Xbox 本体を対象とした Microsoft Game Development Kit (GDK) ゲームに含めるために適したダイナミックリンク ライブラリをビルドするプロジェクトを作成します。 |
これらのテンプレートにアクセスするには:
- Visual Studio を起動します。
- [ファイル] -> [新規]-> [プロジェクト] を選択します。 [新しいプロジェクト] ダイアログ ボックスが表示されます。
- [新しいプロジェクト] ダイアログで、[すべての言語] フィルターを C++ に設定し、[すべてのプラットフォーム] フィルターを [Xbox] または [Windows] に設定し、[すべてのプロジェクトの種類] を [ゲーム] に設定します。 上記のプロジェクト名も検索できます。
- Microsoft Game Development Kit (GDK) プロジェクト テンプレートの一覧から、目的のプロジェクト テンプレートを選択します。
- [OK] をクリックします。
テンプレートの選択
新しい Microsoft Game Development Kit (GDK) プロジェクトを開始する場合、最初に行う必要があることの 1 つは、使用する Microsoft Game Development Kit (GDK) テンプレートを決定することです。 回答は、ゲームの対象が PC、Xbox、または両方のいずれかによって変わります。
PC 専用のゲーム
通常は Direct3D 12 デスクトップ ゲーム テンプレートを使用して開始します。 テンプレートの主な機能の一部を次に示します。
Windows API Family WINAPI_FAMILY_DESKTOP_APP を使用し、通常の PC ライブラリ (kernel32.lib、user32.lib など) にリンクします。こうすることで、PC API の完全なセットがゲームで使用可能になります。
必要なヘッダーとライブラリをインクルードします。 PC と互換性がある Direct3D 12 グラフィックスの実装を追加できるようにテンプレートの準備が整います。 テンプレートには、単純なスワップチェーン、Direct3D デバイス、基本的なゲームアップデートとレンダリング ループが用意されています。
XGameRuntime.h and links to XGameRuntime.lib をインクルードします。 すべての Microsoft Game Development Kit (GDK) ゲーム ランタイム機能を使用する準備ができました。
Xbox Live API (XSAPI) 拡張機能ライブラリも既定で使用できます。 Microsoft Game Development Kit (GDK) 拡張機能ライブラリも追加できます。
'stock' x64 プラットフォームまたはカスタム MSBuild プラットフォーム Gaming.Desktop.x64 に基づくビルド構成を宣言します。これにより、ローカル デバッガーを使用して (開発用コンピューター上で) ローカルでゲームを反復処理することを想定して x64 ターゲットがビルドされます。
パートナー センターからタイトルの情報を入力するプレースホルダー情報を含む MicrosoftGameConfig.mgc ファイルを作成します。
Xbox 向けのゲーム
通常は Direct3D 12 Xbox ゲーム テンプレートを使用して開始します。 テンプレートの主な機能の一部を次に示します。
Windows API Family WINAPI_FAMILY_GAMES を使用し、XGamePlatform.lib にリンクします。これによって、一連のコア プラットフォーム API が、Xbox Games OS でサポートされることが保証される API に制限されます。
必要なヘッダーとライブラリをインクルードします。 Xbox デバイス固有のハードウェア拡張機能を全面的に活用できる D3D12 グラフィックスの実装を追加できるようにテンプレートの準備が整います。
XGameRuntime.h and links to XGameRuntime.lib をインクルードします。 すべての Microsoft Game Development Kit (GDK) ゲーム ランタイム機能を使用する準備ができました。
Xbox Live API (XSAPI) 拡張機能ライブラリも既定で使用できます。 Microsoft Game Development Kit (GDK) 拡張機能ライブラリも追加できます。
MSBuild カスタム プラットフォーム Gaming.Xbox.XboxOne.x64 を使用するビルド構成を宣言します。これにより、リモート デバッグ用に設定された Xbox One ERA 開発キットを使用してゲームを反復することを想定して x64 ターゲットがビルドされます。
パートナー センターからタイトルの情報を入力するプレースホルダー情報を含む MicrosoftGameConfig.mgc ファイルを作成します。
PC と Xbox 向けのゲーム
前述の 2 つのテンプレートのいずれかで開始し、プロジェクトに 2 つ目のビルド構成を追加することをお勧めします。 たとえば、Direct3D 12 Desktop Game プロジェクトから開始すると、Gaming.Desktop.x64 プラットフォーム用のビルド構成が自動的に含まれ、プラットフォームを Gaming.Xbox.XboxOne.x64 に設定して 2 つ目のビルド構成を追加できます。 プロジェクトをビルドすると、Visual Studio によって PC 向けの 1 つのゲーム バージョンと Xbox 本体向けのもう 1 つのバージョンがビルドされます。
この推奨されるアプローチでは、ソース コードを調整して (#define/#ifdef
を使用するか、プラットフォーム固有のコードを個別の DLL としてパーティション化する)、ゲームの PC 構成が "ストック" Direct3D 12 を使用し、ゲームの Xbox 構成がデバイス拡張機能と同等の Direct3D 12.x を使用するようにする必要があります。
Gaming.Desktop.x64 と Gaming.Xbox.XboxOne.x64 の間でアクティブな構成を切り替えると、使用するデバッガーやリンクするライブラリなどのツール設定がそれに応じて変わります。
次の手順
新しいプロジェクトを作成して GDK のインストールを確認した後、次の手順は、PC ゲームと Xbox ゲームのどちらを開発するかによって異なります。
PC ゲームを開発している場合は、「PC ゲームの開発を始める」の手順に従ってください。
Xbox ゲームを開発している場合は、「Xbox 本体開発の概要 (NDA トピック)認可が必須です」の手順に従ってください。
関連項目
MicrosoftGameConfig の概要
Microsoft Game Development Kit (GDK) の使用を開始する (NDA トピック)認可が必須です