次の方法で共有


Unity の概要

概要

このドキュメントでは、GDK コンポーネントをプロジェクトに統合する際に Unity の使用を開始する方法について説明します。 ここでは、さまざまな種類の Unity パッケージ、パッケージを設定する方法、および各パッケージに含まれる機能について説明します。

Microsoft と Unity が共同開発した最新の Microsoft GDK Packages for Unity は、Windows x64、Xbox Series X|S、Xbox One 本体デバイスを同じ構成とコード ベースでターゲットにする機能を提供します。

前提条件

Microsoft GDK Packages for Unity を利用するには、次の前提条件が必要です。

パッケージ要件の詳細については、Unity の要件とインストールに関するドキュメントを参照してください。

Microsoft GDK Packages for Unity

プロジェクトと Editor と統合すると、さまざまな機能を提供する複数の GDK パッケージがあります。 すべてのパッケージは Unity によって配布されています。詳細については、ダウンロード ポータルを参照してください。

Microsoft GDK Xbox 本体パッケージにアクセスするには、Xbox 開発者プログラムのメンバーであることと (ID@Xbox を含む)、Microsoft の担当者に問い合わせて Unity の Xbox フォーラムへのアクセスを依頼している必要があります。 PC 開発を開始するために必要なパッケージは一般公開されており、こちらで入手できます。

パッケージの完全な一覧は次のとおりです。

  • Microsoft GDK API Package for Unity (PC と本体)
  • Microsoft GDK Tools Package for Unity (PC と本体)
  • Microsoft GDK Tools for Xbox Package for Unity (本体のみ)
  • GXDK Input System Package for Unity (本体のみ)
  • Game Core Render Pipeline Package for Unity (本体のみ)

Microsoft GDK API Package for Unity には、Xbox ネットワーク サービス (実績、クラウド保存、ランキングなど) へのアクセスを含め、PC、Xbox Series X|S、Xbox One デバイス全体で使用されるネイティブ API に必要な C# ラッパーが用意されています。

Microsoft GDK Tools Package for Unity は、Microsoft ゲーム構成ファイルを作成し、Microsoft Store に提出するために PC ゲームを GDK でパッケージ化するために、Unity 内の開発ワークフローに必要な統合を提供します。

Microsoft GDK Tools for Xbox Package for Unity は、Xbox Series X|S および Xbox One デバイス用の開発者ワークフローの統合によって GDK ツール パッケージを拡張します。これには、Microsoft Store への提出のために本体用の GDK ゲームをパッケージ化することが含まれます。

GXDK Input System Package for Unity は、Xbox Series X|S または Xbox One デバイスをターゲットにするときに、Unity Input System にコンソール固有の機能を提供します。

Game Core Render Pipeline Package for Unity には、Xbox Series X|S または Xbox One デバイスでユニバーサル レンダー パイプライン (URP) や HD レンダー パイプライン (HDRP) などの Unity のスクリプタブル レンダー パイプライン (SRP) を使用するためのコンソール固有の機能が用意されています。

本体用の Unity Editor アドオン

ビルド プロファイルとプロジェクト設定にアクセスして、Unity で Xbox Series X|S と Xbox One デバイスで構成、ビルド、展開、起動できるようにするには、Unity が提供する Editor アドオンをインストールして、この機能を含むように Editor を拡張する必要があります。

これらのアドオンは .exe インストーラーとして提供されており、各エディターに追加機能を提供します。 そのため、これらの機能を利用できるようにするには、Editor を使用する各マシンにインストールする必要があります。 アドオンが正常にインストールされると、Unity Hub の [インストール] タブに関連付けられている Unity Editor バージョンに、サポートされている機能として一覧表示されます。 そのバージョンの Editor を使用するすべてのプロジェクトで、Xbox Series X|S と Xbox One GDK プロジェクト設定とビルド プロファイルを有効にできるようになりました。

両方のアドオンがインストールされている Editor の Unity 6 バージョンの例を次に示します。

両方のアドオンがインストールされている Editor の Unity 6 バージョン

パッケージ、アドイン、GDK、エンジンの互換性

Microsoft GDK API & Tools Packages for Unity は、Unity Editor 内の Package Manager の Unity Registry を介して取得されます。 表示されるバージョンは、Editor がバージョン 2021.3.47f1、2022.3.55f1、6000.0.31f1 以降の場合、実行中の Editor と互換性があります。 Microsoft GDK API Package for Unity の各リリースと GDK および Engine のバージョン互換性の詳細については、こちらを参照してください。 これらのパッケージでは、GitHub 経由で取得した GDK と、Xbox Developer Downloads ポータル経由で取得した GDK がサポートされます。

Microsoft GDK Tools for Xbox Package for Unity は、Unity の Xbox フォーラムからの直接のダウンロード リンク経由で取得されます。 このパッケージは、Unity Editor バージョン 2021.3.45f1、2022.3.49f1、6000.0.22f1 以降と互換性があります。 このパッケージの要件の詳細については、こちらの Unity Xbox フォーラムの投稿を参照してください。 このパッケージは、Xbox デベロッパー向けダウンロード ポータル経由で取得した GDK でのみサポートされます。 このパッケージを Editor で公開するには、Unity Editor 用 Xbox Series X|S および Xbox One アドオンをインストールする必要があります。

GXDK Input System Package for Unity は、Unity の Xbox フォーラムからの直接のダウンロード リンク経由で取得されます。 このパッケージの要件の詳細については、こちらの Unity Xbox フォーラムの投稿を参照してください。 このパッケージは、Xbox デベロッパー向けダウンロード ポータル経由で取得した GDK でのみサポートされます。 このパッケージを Editor で公開するには、Unity Editor 用 Xbox Series X|S および Xbox One アドオンをインストールする必要があります。

Game Core Render Pipeline Package for Unity は、Unity の Xbox フォーラムからの直接のダウンロード リンク経由で取得されます。 このパッケージの要件の詳細については、こちらの Unity Xbox フォーラムの投稿を参照してください。 このパッケージは、Xbox デベロッパー向けダウンロード ポータル経由で取得した GDK でのみサポートされます。 このパッケージを Editor で公開するには、Unity Editor 用 Xbox Series X|S および Xbox One アドオンをインストールする必要があります。

Unity Editor 用 Xbox Series X|S および Xbox One アドオンは、Unity の Xbox フォーラムからの直接のダウンロード リンク経由で取得されます。 このような Editor アドオンの要件の詳細については、こちらの Unity Xbox フォーラムの投稿を参照してください。 このようなアドオンは、Xbox デベロッパー向けダウンロード ポータル経由で取得した GDK でのみサポートされます。

パッケージをプロジェクトに統合する

Microsoft GDK API & Tools Packages for Unity の使用を開始するには、次の手順に従います。

  1. ウィンドウ メニューに移動し、[Package Manager] を選択します。
  2. 開いたら、右側の列から [Unity Registry] オプションを選択します。
  3. 検索ボックスに「gdk」と入力し、リストが更新されるまで待ちます。
  4. [Microsoft GDK API] パッケージを選択し、[インストール] をクリックします。
  5. 完了したら、[Microsoft GDK Tools] パッケージを選択し、[インストール] をクリックします。
  6. 両方のパッケージが正常にインストールされたら、Package Manager を閉じます。

Unity 6 の Unity Registry でのパッケージの検索の概要を次に示します。

Unity 6 の Unity Registry でのパッケージの検索の概要

Xbox 本体固有のパッケージの場合、Unity Xbox フォーラムのダウンロード ポータル経由でパッケージを取得します。 これらのパッケージは、次の方法でプロジェクトにローカルに追加されます。

  1. ウィンドウ メニューに移動し、[Package Manager] を選択します。
  2. 開いたら “+” を選択し、[tarball からパッケージを追加...] を選択します。
  3. ダウンロードした .tgz 拡張機能パッケージに移動します。
  4. 選択すると、プロジェクトにインストールされます。

次の図は、Unity 6 のプロジェクトにローカルにインストールされたパッケージを示しています。

Unity 6 のプロジェクトにローカルにインストールされたパッケージ

Unity のパッケージは Unity プロジェクトに関連付けられます。 新規の Unity プロジェクトを作成する場合、これらのパッケージを再度取得し、その Unity プロジェクトに再度インストールする必要があります。 これらのパッケージがインストールされた Unity プロジェクトを開くユーザーは、この機能にアクセスするためにレジストリから再ダウンロードする必要はありません。

注意

これらのデバイスで構成、ビルド、展開、起動するための機能を利用できるようにするには、Xbox Series X|S および Xbox One アドオンを Editor のインストールごとにインストールする必要があります。

GDK 対応になるようにプロジェクトを構成する

このセクションでは、GDK 対応のプロジェクトの初期統合について説明します。

GDK 設定アセットの作成

プロジェクトに Microsoft GDK API & Tools Packages for Unity がインストールされると、追加のメニュー オプションが表示されます。 そのうちの 1 つは GDK 固有の一連のアセットです。これにより、GDK 設定アセットを生成できます。 これにより、プロジェクト設定に GDK 固有の設定が追加され、GDK 製品を Unity 内で直接構成できるようになります。 Unity での GDK 設定の管理の詳細については、こちらを参照してください。

Unity 6 で作成される GDK 設定アセットの例を次に示します。

Unity 6 で作成される GDK 設定アセット

GDK Tools for Xbox パッケージと Xbox アドオンがインストールされている場合、GDK 設定にはプラットフォームごとに複数のタブがあり、プラットフォーム固有の設定と構成ファイルを作成できます。 プロジェクトには複数の GDK 設定アセットが含まれいる可能性がありますが、一度にアクティブにできるアセットは 1 つだけです。

Unity 6 で Xbox Series X|S と Xbox One 用に作成される GDK 設定の例を次に示します。

Unity 6 で Xbox Series X|S と Xbox One 用に作成される GDK 設定

Microsoft ゲーム構成アセットの作成

GDK 設定アセットが作成されたら、Microsoft ゲーム構成アセットをプロジェクトに追加できます。 これにより、GDK 固有の機能を使用するようにプロジェクトを構成するために必要なファイルが生成されます。 Unity での Microsoft ゲーム構成ファイルの管理の詳細については、こちらを参照してください。

Unity 6 で作成される Microsoft ゲーム構成アセットの例を次に示します。

Unity 6 で作成される Microsoft ゲーム構成アセット

Microsoft ゲーム構成と GDK アセットの関連付け

Microsoft ゲーム構成が作成されたら、GDK プロジェクト設定を開き、Microsoft ゲーム構成をプロジェクトに関連付ける必要があります。 これにより、ビルドとパッケージ化の手順の一部として、そのプラットフォームで使用されます。

Unity 6 での Microsoft ゲーム構成の関連付けの例を次に示します。

Unity 6 での Microsoft ゲーム構成の関連付け

Microsoft ゲーム構成アセットの編集

GDK ツール パッケージ統合の一環として、Microsoft ゲーム構成アセットには、適切な GDK 構成値を簡単に変更して構成するのに役立つ特定の Editor 統合があります。 これはアセットの一覧で Microsoft ゲーム構成アセットを選択すると、[インスペクター] ペインにあります。 Unity での Microsoft ゲーム構成ファイルの管理の詳細については、こちらを参照してください。

Unity 6 での Microsoft ゲーム構成の編集の例を次に示します。

Unity 6 での Microsoft ゲーム構成の編集

GDK ゲームとパートナー センター製品の関連付け

GDK ツール パッケージ統合の一環として、Microsoft ゲーム構成エディターを使用すると、組み込みのウィザードを使用して、GDK ゲームをパートナー センター製品に簡単に関連付けることができます。 これを行うには、関連付けるパートナー センター製品を表示する権限を持つ Microsoft アカウントにサインインする必要があります。 パートナー センターに正常に関連付けたら、ウィザードはパートナー センターからプロジェクトにマップされた値を自動的に一覧表示します。 パートナー センターで製品を作成し、Xbox サービス機能にアクセスする方法の詳細については、こちらを参照してください。

注意

各ユーザーがストアに適切に関連付けるために必要なアクセス許可の詳細については、こちらを参照してください。

Unity 6 内でストア関連付けウィザードを開始する例を次に示します。

Unity 6 内でストア関連付けウィザードを開始する

注意

パートナー センターの [パッケージ/ID/パブリッシャー] 行からパブリッシャー情報を取得し、Microsoft ゲーム構成エディターの [パブリッシャー] フィールドに適用して、ストア関連付けウィザードを適切に使用する必要があります。

アクセス API に C# ラッパーを使用する

Unity 用の Microsoft GDK API パッケージの一部として、ネイティブ GDK API の C# ラッパーのセットが提供され、Unity プロジェクト内のこれらの API に直接アクセスできます。 GDK API へのアクセスの詳細については、こちらを参照してください。

Unity の Microsoft GDK API パッケージ内の [パッケージ] ウィンドウの C# ラッパーの例を次に示します。

Unity の Microsoft GDK API パッケージ内の [パッケージ] ウィンドウの C# ラッパー

Visual Studio と Unity の活用

Visual Studio では、Unity と直接統合するために、Visual Studio Installer の一部としてゲーム ワークロードが用意されています。 Visual Studio Tools for Unity 拡張機能の詳細については、こちらを参照してください。

サンプルの活用

現在、プロジェクトのビルド時にコードを参照するために取得して使用できる Unity サンプルのセットが 2 つあります。

Unity Registry のサンプル

サンプルの最初のセットは Microsoft GDK API Package for Unity に付属します。ダウンロードすると、次に示すように Unity Registry の Microsoft GDK API エントリ内の [サンプル] タブに表示されます。

ダウンロード後の Unity Registry の Microsoft GDK API エントリ内の [サンプル] タブ

これらのサンプルは、実績、クラウド保存、ゲーム保存、ゲーム内ストアの動作、ランキング、サインイン、音声合成、ユーザーの動作などのシステムの基本的な操作を示しています。 これらのサンプルの詳細については、こちらを参照してください。

注意

これらのサンプルは、Unity の Input System パッケージに依存しています。 Unityの Input System の詳細とパッケージのインストール方法については、こちらを参照してください。

Unity GDK サンプル

Unity Registry 経由で提供されるサンプルに加えて、GDK ダウンロードそのものと一緒に提供されるサンプルのセットがあります。 これらは、API のより高度な使用方法のデモを提供することを目的としています。 含まれるサンプルは次のとおりです。

  • UnityAchievements - 実績の進行状況を照会および更新するための XblAchievement API の使用方法を示します。
  • UnityInGameStore - すべてのタイトルとして実行するように構成でき、カタログ オファリング、ユーザー資格、ライセンス製品を照会するための XStore API の大部分を示す、完全なゲーム内ストア エクスペリエンス。
  • UnityLeaderboardsTitleManaged - タイトルで管理されるランキングを使用して、ユーザー統計を更新および照会し、ソーシャル ランキングとグローバル ランキングを照会する方法を示します。
  • UnitySimpleMPSD - セッション管理とマッチメイキングにマルチプレイヤー セッション ディレクトリ (MPSD) と SmartMatch API を使用する基本的なマルチプレイヤー セッション サンプル。
  • UnityRumble – Multiplayer Manager (MPM) を使用し、PlayFab パーティーを使用してマルチプレイヤー セッションの作成/参加/マッチメイキング/脱退、セッション状態の更新、ゲームプレイ データの共有、チャット経由での通信を行うシンプルなマルチプレイヤー ゲーム。
  • UnityRumblePlayFabMultiplayer - 上記と同様ですが、Multiplayer Manager ではなく、セッション管理とマッチメイキングに PlayFab マルチプレイヤーを使用します。
  • UnitySimpleHttpCall - Xbox Live Http 呼び出しを使用して、文字列またはバイト配列としてメッセージを送受信する方法を示します。
  • UnitySimpleWebSockets - Http クライアント Web ソケットを使用して、事前に構成された Web ソケット エンドポイントにバイナリ メッセージまたは文字列メッセージを送受信する方法を示します。
  • UnitySimplePLM - 有効期間管理イベントを検出して応答する方法を示す基本的なサンプル (コンソールでの制約/中断/再開、PC でのフォーカスの損失/検出)。
  • UnitAssetWorkflow (Xbox のみ) - ゲーム アセットの迅速なイテレーションを容易にするために、Xbox 本体リソースとツール API の使用を示します。

これらのサンプルは、Xbox デベロッパー向けダウンロード サイトから取得できます。 ダウンロード ポータルの GDK ファイルの種類の下にあるビルドの一覧のサンプル名の例を次に示します。

ダウンロード ポータルの GDK ファイルの種類の下にあるビルドの一覧のサンプル名

プロジェクトのビルドとパッケージ化

このセクションでは、Unity でのプロジェクトのビルドとパッケージ化について説明します。

ローカライズとパッケージ化の設定

Windows プラットフォームの GDK 設定の一環として、シェル ビジュアル、ローカライズされたアセットをビルドするかどうか、および Unity のビルド ステップの一部としてパッケージを作成するかどうかを指定できます。 Windows パッケージ化用に構成する必要がある特定の [ビルド プロファイル] 設定はありません。 パッケージ設定の詳細については、 こちらを参照してください。

Unity 6 でこれらの GDK 設定値を設定する例を次に示します。

Unity 6 でこれらの GDK 設定値を設定する

本体の場合、Microsoft GDK Tools for Xbox パッケージがプロジェクトに含まれている場合は、[シェル ビジュアル モード] を [コピーのみ] に設定できます。これにより、パッケージ化する前にストア イメージがビルド フォルダーに確実にコピーされます。 これにより、イメージを手動でコピーする必要がなくなります。

本体のパッケージ暗号化方法を設定するには、[プロジェクト設定] > [プレイヤー] > [パブリッシャー設定] に移動します。 Xbox ターゲットには、[パッケージ暗号化] 設定が含まれます。 ローカル テスト用にサイドロードできるパッケージをビルドする場合は、'開発' を使用します ([ビルドとデプロイ] または [xbapp インストール] を使用する場合)。 パートナー センターにアップロードし、Store からインストールするパッケージには、[提出] を使用します。

Unity の本体用パッケージ生成は、[ビルド プロファイル] ページで構成されます。 ターゲット プラットフォームを Xbox One または Xbox Series に変更します (ビルド対象のプラットフォームに応じて異なります)。 サイドロードできるローカル パッケージの場合は、[ビルドの種類] を [開発プレーヤー] に設定します。 パートナー センターにアップロードするパッケージの場合は、[ビルドの種類] を [マスター プレーヤー] に設定します。 デプロイ メソッドを [パッケージ] に変更します。

'開発' 暗号化を使用してビルドされた本体側で読み込み可能なパッケージの場合は、[ビルドと実行] オプションを使用して本体にデプロイできます。 これにより、ルース フォルダー ビルドが作成され、makepkg.exe がテスト署名とともに実行され、既定の開発キットにパッケージがインストールまたは起動されます。

'提出' 暗号化を使用してビルドされたパッケージをサイドロードすることはできません。 パートナー センターにアップロードしてから、Microsoft Store 経由でインストールする必要があります。

ビルド プロファイル

ビルド プロファイルは、ターゲット プラットフォームごとに存在します。 パッケージが Windows GDK 設定ファイルで指定された場合、Windows プラットフォームは GDK 設定ファイルを使用し、ビルドが完了したら MSIXVC フォルダーに MSIXVC パッケージを生成します。 ビルド プロファイルの詳細については、こちらを参照してください。

本体の場合、パッケージ化を含むデプロイの設定は、追加のビルド、デプロイ、デバッグ オプションと共にプラットフォーム固有のビルド設定で指定されます。 ビルドが完了した後、出力ディレクトリには XVC フォルダーに XVC パッケージが含まれます。

Unity 6 で各プラットフォーム ビルド プロファイルを表示する例を次に示します。

Unity 6 で各プラットフォーム ビルド プロファイルを表示する

プレイ モードでプロジェクトをテストする

GDK ベースのプロジェクトがプレイ モードで正しく動作するようにするための追加の手順と考慮事項があります。 プレイ モードを適切に使用するために必要な手順の詳細については、こちらを参照してください。

追加情報

お問い合わせ

問題が発生した場合のお問い合わせについては、Unity Xbox フォーラムを参照してください。 Xbox 開発者プログラムに参加しておらず、Windows 開発用のパブリック パッケージを使用している場合、Unity Windows フォーラムをご使用ください。

Unity 統合に固有ではない GDK 固有のトピックに関連するヘルプをお探しの場合は、Xbox GDK フォーラムに投稿してください。

既知の問題

Unity の GDK API パッケージに関連する既知の問題の一覧については、こちらを参照してください。

Unity の GDK ツール パッケージに関連する既知の問題の一覧については、こちらを参照してください。

以前のバージョンの Unity を使用する

Microsoft GDK AP & Tools Packages では、Unity 2021.3 以降のバージョンの Editor がサポートされています。 統合ツールのサポートと機能を利用して、すべてのプラットフォームでタイトルを適切にビルドして実行するために、Unity Editor のサポートされているバージョンを使用することを強くお勧めします。

Unity の古いバージョンを使用している場合、GDK API パッケージで提供されている C# ラッパーを参照して、GDK ネイティブ API を使用して独自のプロジェクト固有のインターフェイスを提供できます。 さらに、Editor ツールを使用して、ゲームの MicrosoftGame.config、ローカライズ、シェルのビジュアルとパッケージを作成できます。

これらのプロセスは手動であり、直接の Editor 統合を提供しません。 Unity Editor バージョンをアップグレードできず、オプションに関するその他のガイダンスが必要な場合は、Microsoft の担当者にお問い合わせください。

非推奨のパッケージ

Microsoft によって GitHub で配布された GDK Unity パッケージ (PC のみ) は現在非推奨となり、Microsoft GDK API & Tools Packages for Unity を優先して、削除されました。 GDK Unity パッケージ (PC のみ)に関して質問がある場合は、Microsoft の担当者にお問い合わせください。 以前の GDK Unity パッケージ (PC のみ) を使用していて、移行方法の手順をお探しの場合は、こちらのアップグレード ガイドを参照してください。

非推奨になった Unity で提供されるパッケージの詳細については、Unity Xbox フォーラムの投稿を参照してください。