Visual Studio 2019 バージョン 16.0 から 16.10 は 2022 年 10 月時点でサポート対象外です。バージョン 16.11 もメインストリーム サポートは終了しています。
Visual Studio 2019 のインストール
GDK は Visual Studio 2019 の Professional エディションまたは Enterprise エディションでの開発をサポートしています。Community エディションはサポートされていません。Visual Studio 2019 をインストールする際、以下のスクリーンショットに示すように、セットアップ中に [C++ によるゲーム開発] ワークロードを選択してください。 ゲーム開発に必要なコアの C++ ツールに加えて、Windows 10 SDK (22000) コンポーネントがインストールされていることを確認してください。これにより、GDK でゲームをビルドするために必要な Windows SDK が提供されます。Windows SDK for Windows 11, Version 22H2 (10.0.22621) または Windows SDK for Windows 11, Version 24H2 (10.0.26100) も使用できますが、必須ではありません。 必須ではありませんが、[C++ によるデスクトップ開発] ワークロードをインストールすると、より多くのツールとサンプルが利用でき、便利な場合があります。 MSVC ビルド ツールのバージョン v142 は、[C++ によるゲーム開発] ワークロードと共にインストールされます。
Visual Studio 2017 v141 ツールセットは 2024 年 10 月リリース時点でサポート対象外となりました。
clang/LLVM for Windows (ClangCl) プロジェクトのサポート
Visual Studio 2019 は clang/LLVM for Windows 開発もサポートしています。このサポートには、個別コンポーネントである C++ Clang-cl for Windows と C++ Clang-cl for v142 build tools (x64/x86) のインストールが必要です。 詳細については、Microsoft Game Development Kit (GDK) の Clang に関する記事と Microsoft Docs を参照してください。Build Tools エディション
インストールを伴う/伴わないビルドの手順 に従い、Build Tools for Visual Studio 2019 を使用して Microsoft GDK ヘッダー、ライブラリ、およびツールでビルドします。- ワークロード [C++ によるデスクトップ開発] を使用してください。これは PlatformToolset
v142用の Visual C++ コンパイラをインストールします。本記事前述の手順に従い、ClangClサポート用のコンポーネントも選択できます。 - Windows SDK をインストールするか、NuGet パッケージとして使用します。
Build Tools エディションは拡張機能をサポートしないため、Build Edition 用の Microsoft GDK の VSIX パッケージをインストールできません。この制限により、コマンドライン ツールは使用できますが、デプロイやデバッグはサポートされません。
既存の Visual Studio 2017 プロジェクトを Visual Studio 2019 へ移行する
ほとんどの場合、Visual Studio に付属するアップグレード ウィザードで、他の変更なしにプロジェクトを Visual Studio 2019 に移行できます。Visual Studio 2019 で Visual Studio 2017 のプロジェクトを開くと、次の [ソリューション操作の確認] ダイアログ ボックスが表示され、アップグレードを促されます。プロジェクトをアップグレードするには [OK] を選択します。 ビルド ツールをアップグレードせずに Visual Studio 2019 IDE を使用することもできます。その場合、[ソリューション操作の確認] ダイアログ ボックスで [キャンセル] を選択します。プロジェクトを Visual Studio 2019 に手動でアップグレードする
プロジェクト ファイル (.vcxproj) を直接編集してプロジェクトをアップグレードしたい場合は、次の変更を行います。PlatformToolsetのすべてのインスタンスをv141からv142に変更します。次の例は、この変更の方法を示しています。
- プロジェクトを再ビルドします。
特定のバージョンの使用
既定では、Visual Studio Installer は常に最新リリースをダウンロードします。エンタープライズ環境では、オフライン レイアウトを使用して特定のバージョンを制御できます。詳細については、Visual Studio のデプロイに対する更新の制御 を参照してください。この記事では VS 通知 アイコンの削除に関する情報も提供されています。 Visual Studio 2019 の特定のバージョンは Visual Studio 2019 リリース からダウンロードしてください。既知の問題
/fp:fastでビルドすると、Visual Studio 2019 で DirectXMath*IsNan関数が失敗することがあります。修正は Visual Studio 2019 (16.3 以降) を使用することです。それ以外の場合、それらの関数の使用箇所を#pragma float_controlステートメントで囲むことで問題を回避できます。- GDK 開発では 64 ビット ネイティブ コンパイラ ツールセットのみがサポートされます。Visual C++ の
vcxprojでは、globals プロパティでこのツールセットを設定します。
- v11 より前の clang/LLVM for Windows バージョンでは、プリコンパイル ヘッダーに既知の問題があります。PCH と C++ テンプレートの使用状況によっては、正常にビルドするために
-fno-pch-instantiate-templatesを追加する必要がある場合があります。 - Microsoft Update を通じて配信される .NET Core 2.1 更新 が GDK のインストールをブロックする可能性があります。この問題の詳細については、.NET Core 2.1 サポート終了通知 を参照してください。この問題を解決するには:
- Visual Studio Installer を実行します
- Visual Studio 2019 の [変更] ボタンを選択します
- [個別のコンポーネント] タブを選択し、.NET Core 2.1 Runtime (LTS) コンポーネント を削除します
- GDK のアンインストールと再インストールを再試行します
バグの報告
Visual C++ コンパイラ のバグは、可能であれば Visual Studio の [問題を報告] から報告してください。Microsoft Docs および Developer Community の Web サイトを参照してください。コンパイラの適切なバグ報告の作成方法の詳細については、このページ を参照してください。問題を再現するために他の NDA 情報が必要な場合は、“Microsoft only” とマークされた公開報告済みの問題にコメントを追加できます。
