PC 開発用の Unreal: はじめに
Unreal ゲームを Microsoft Store に公開する準備を行う場合は、このトピックをご覧ください。
- Unreal 4.27 以降の使用
- Gaming Runtime Services (GRTS) と PC Bootstrapper
- ID@Xbox への登録
- GDK サポートを使用して Unreal ソースへのアクセス権を取得する
- プラットフォーム機能の実装
- パートナー センターで製品を作成する
- Microsoft Store 用にゲームを構成する
- プラットフォーム機能のテスト
- Publishing
- Unreal の GDK 構成のトラブルシューティング
- 付録
Unreal 4.27 以降の使用
Unreal ゲームを Microsoft Game Development Kit に統合する最も簡単な方法は、最新バージョンの Unreal にアップグレードすることです。 Windows PC と Xbox 本体の両方に対する GDK のサポートは、バージョン 4.27 以降の Unreal に組み込まれています。
注意
既定では、Direct3D 11 は 4.27 以前の UE バージョンではサポートされていません。 Direct3D 11 サポートは、この技術ノートで説明されている 2 つの変更リスト (4.27 以前の WinGDK での DX11 サポート) を統合することにより、UE 4.26 で有効にできます。 これらの変更が統合されていない場合、4.25Plus/4.26 では、Direct3D 11 を指定した設定にかかわらず、Direct3D 12 が使用されます。
Unreal バージョン 4.27 以降にアップグレードしない場合、このトピックの後半に記載されている「以前のバージョンの Unreal」の手順に従います。
注意
Unreal 4.26 には GDK サポートも組み込まれていますが、Direct3D 11 のサポート不足や PSO シェーダー キャッシュの問題などのいくつかの問題があり、ゲームの最初のプレイスルー時に途切れる場合があったため、推奨されていません。
最新の Gaming Runtime Services (GRTS) と PC Bootstrapper
2022 年 5 月の GRTS リリース以降、PC ゲームの起動エクスペリエンスに PC Bootstrapper が追加されています。 PC ブートストラップは Gaming RunTime Service (GRTS) に依存しており、開発用 PC で GRTS が最新でない場合、サインインしようとするとエラー (E_FAIL) が発生する可能性があります。 詳細については、「PC Bootstrapper」 の概要を参照してください。
ID@Xbox への登録
GDK サポートを使用して Unreal ソースにへのアクセス権を取得するには、その前に ID@Xbox のプログラムに登録する必要があります。 ID@Xbox プログラムは、開発者が Xbox のサービスを利用して Xbox および Windows でゲームを公開することを可能にします。 [Xbox One \| Xbox 向けの個人開発者プログラム] に移動し、[今すぐ申請] をクリックして、登録プロセスを開始できます。
GDK サポートを使用して Unreal ソースへのアクセス権を取得する
重要: PC 用にビルドしている場合でも、コンソール開発にアクセスする必要があります。
Unreal GDK 開発を開始するには、コンソール開発要求フォームを使用してアクセスを要求します。 アクセス要求が通過しない場合、開発者アカウント マネージャー (DAM) にお問い合わせください。
標準 Unreal には、GDK サポートはありません。 このため、Unreal GDK サポートへのアクセス権を要求する必要があります。
プラットフォーム機能の実装
GDK プラットフォームの統合は、Unreal のオンライン サブシステムの一部です。 GDK オンライン サブシステムを使用するように Unreal に指示するには、WinGDKEngine.ini ファイル (Platforms\WinGDK\Config 内) を編集して、以下の内容を含めます。
[OnlineSubsystem]
DefaultPlatformService=GDK
サインイン
サインインは GDK のオンライン サブシステムの一部です。
実績
Unreal ゲームで実績を使用するには、ゲームとパートナー センター プロジェクトに次の変更を加える必要があります。
タイトル管理された実績とイベントベースの統計情報を持つ GDK オンライン サブシステムを使用するための Unreal の設定
実績は GDK のオンライン サブシステムの一部として含まれています。 タイトルで管理される実績とイベントに基づく統計を使用するように Unreal に指示するには、WinGDKEngine.ini ファイル (Platforms\WinGDK\Config 内) を編集して、以下の内容を含めます。
[OnlineSubsystemGDK]
AchievementMode=2017
StatsMode=2013
パートナー センターでゲームの統計情報や実績システムを構成する
実績を設定するには:
- [パートナー センター ダッシュ ボード] に移動します。
- ゲームに移動します。
- ナビゲーション ウィンドウで [Xbox サービス] セクションを展開します。
- [Xbox の設定] をクリックします。
- [統計構成システム] が [イベントに基づく統計] に設定されていることを確認してください。
- [実績構成システム] が [タイトルで管理される実績] に設定されていることを確認してください。
注: XDK から移行する場合は、OnlineSubsystemLive は OnlineSubsystemGDK に置き換えられます。 Windows GDK .ini ファイルで、これを既定の OnlineSubsystem として設定する必要があります。
Unreal での実績名のマッピング
Unreal で使用される実績名は、パートナー センターで使用する実績 ID にマップする必要があります。
Unreal で使用する実績名をマップするには、プロジェクトの platforms\GDK\Config\OSS\ ディレクトリに Achievements.json という名前のファイルを作成します (パスが存在しないことがあり、自分自身で作成することが必要な場合があることに注意してください)。 Achievements.json には、パートナー センターの ID への実績名のマッピングが含まれます。 たとえば、プロジェクトに実績 1 から実績 10 までの名前が付けられた実績が 10 件含まれる場合、Achievements.json は次のように表示されます。
{
"AchievementEventName" : "NotUsedInAchievement2017",
"AchievementMap" :
{
"achievement 1" : 1,
"achievement 2" : 2,
"achievement 3" : 3,
"achievement 4" : 4,
"achievement 5" : 5,
"achievement 6" : 6,
"achievement 7" : 7,
"achievement 8" : 8,
"achievement 9" : 9,
"achievement 10" : 10
}
}
クラウド保存
クラウド保存は Unreal のゲーム セーブ インターフェイスの一部であり、有効にするために追加の構成は必要ありません。
Unreal でのゲーム セーブ インターフェイスの詳細については、Unreal Engine ドキュメントの「ゲームの保存と読み込み」を参照してください。
注: クロスセーブが機能しない原因がわからない場合、GDK の保存場所は一般的なゲームの保存場所とは異なることを覚えておくことが重要です。 うまくいかない場合は、ゲームの保存先とクエリ先の場所が異なる場合があるため、確認してください。
Microsoft Store の API
アプリ内購入やダウンロード コンテンツ (DLC) のような Microsoft Store の統合も Unreal のオンライン サブシステムの一部です。
パートナー センターで製品を作成する
Xbox サービスの機能をテストしたり、ゲームをMicrosoft Storeに公開したりする前に、パートナー センターで Xbox サービス対応製品を作成する必要があります。 パートナー センターの詳細については、「パートナー センターでアプリまたはゲームをセットアップする (対象パートナー向け)」をご覧ください。
Microsoft Store 用にゲームを構成する
テスト用のパッケージを作成するか、Microsoft Store にアップロードするには、その前にパートナー センターで作成した製品定義からの値を使用してプロジェクトを構成する必要があります。
Unreal エディターでプロジェクトを構成するには、次の手順に従います。
- Unreal エディターを開き、[編集] を選択してから [プロジェクト設定] を選択します。
- 左側のウィンドウで、[プラットフォーム] を選択し、次のスクリーンショットに示すように [Windows (GDK)] を選択します。
- 表示されるフォームに入力します。 PC の開発には、次のフィールドが必要です。
- 製品名 (ゲームの表示名)
- カルチャの画像リソース
- Microsoft Store のロゴ
- アプリケーションのロゴ
- アプリケーションの小さいロゴ
- アプリケーションのスプラッシュ画面
残りの必須フィールドはパートナー センターにあります。 次の手順を使用して、パートナー センターに移動し、製品構成を完了します。
- パートナー センター ダッシュ ボードに移動します。
- 製品の一覧からゲームを選択します。
- [ゲームの設定] タブを選択し、[Identity details] を選択します。
- [Show Details] を選択して、[Identity details] セクションを展開します。
- 表の次の値を使用し、パートナー センターの値を Windows (GDK) のプロジェクト設定にコピーします。
パートナー センターに表示される名前 | Unreal エディターの名前 |
---|---|
Package/Properties/PublisherDisplayName | Package/Properties/PublisherDisplayName |
Xbox タイトル ID | タイトル ID |
Package/Identity/Name | Package/Identity/Name |
Package/Identity/Publisher | Package/Identity/Publisher |
Xbox サービス -> Xbox 設定 -> アイデンティティ | MSAAppId |
プラットフォーム機能のテスト
プラットフォーム機能はエディターでは動作しません。 パッケージ化されたビルドでのみ動作します。 つまり、プラットフォーム機能にコードを記述することはできますが、パッケージを作成せずにビルドをテストすることはできません。
サインイン、クラウド保存、実績などのプラットフォーム機能をテストするには、テスト アカウントを作成して、サンドボックスを切り替えます。 次のセクションでは、パッケージを作成し、アカウントをテストして、サンドボックスを切り替える方法について説明します。
パッケージの作成
他の Unreal プラットフォームを使用しているときと同じ方法でゲームをパッケージ化します。 次の手順を使用して MSIXVC パッケージを作成し、Microsoft Store にアップロードします。
- [ファイル]>[Package Project (パッケージ プロジェクト)]>[Windows on GDK] を選択してパッケージ化ダイアログにアクセスします。
- [File Explorer] ダイアログ ボックスからビルドを出力するフォルダーを選び、[フォルダーの選択] を選びます。
エラーが発生した場合は、手動でビルドできます。 手動ビルドの詳細については、「Title packaging, content updates, and streaming-installation testing (タイトルのパッケージ、コンテンツのアップデートおよびストリーミングインストールのテスト)」をご覧ください。
パッケージをインストールして実行する
パッケージのインストールおよび実行の詳細については、「Microsoft Game Development Kit ツールを使用して PC タイトルをインストールして起動する」をご覧ください。
テスト アカウントの作成
Xbox サービスの機能をテストできるようにするには、開発サンドボックスへのアクセス権があるテスト アカウントを作成する必要があります。 テスト アカウントの作成の詳細については、「テスト アカウントを作成する」をご覧ください。
Xbox アプリをダウンロードする
Xbox アプリは、テスト アカウントがサインインしていることを確認するのに役立ちます。 アプリはこちらでダウンロードできます: Xbox アプリ
開発サンドボックスを切り替える
テスト アカウントを作成したら、次の手順に従って、アカウントを使用して開発サンドボックスにアクセスします。
サンドボックス ID を検索するには、パートナーセンターに移動します。
ゲームに移動します。
左側のナビゲーション ウィンドウで、Xbox サービス>ゲームプレイの設定 を選択します。
注意
サンドボックス ID は、[ゲームプレイ設定] ページの左上隅にある最初のタブにあります。 "ABCDEF.0" のような名前が付けられています。
スタート メニューを開きます。
Microsoft GDK Command Prompts と入力し、キーボードの Enter を選びます。
最初のコマンド プロンプトを開きます。
コマンド プロンプトで、「XblPCSandbox.exe [サンドボックス ID]」を入力します。
コマンド プロンプトで複数のアプリを起動した後、Xbox アプリにテスト アカウントを使用してサインインします。
正常にサインインできる場合は、テスト アカウントが作成済みで、テストを開始するサンドボックスに変更済みです。 サインインでトラブルが発生した場合は、「サインインとサンドボックス エラーのトラブルシューティング」のヘルプを参照してください。
公開
ゲームと GDK との統合が完了したら、公開する準備ができています。 ゲームを提出するには、パートナー センターに移動し、UI の指示に従います。
Unreal の GDK 構成のトラブルシューティング
ゲームがパートナー センターの値と一致していることを確認する
ゲームにサインインできない、または Xbox サービスへの呼び出しが失敗する場合は、「Microsoft Store 用にゲームを構成する」セクションで設定した値が、パートナー センターのプロジェクトの値と一致していることを確認します。
WinGDKEngine.ini と Achievements.json の内容を確認する
WinGDKEngine.ini と Achievements.json が「タイトル管理された実績とイベントベースの統計情報を持つ GDK オンライン サブシステムを使用するための Unreal の設定」セクションで説明されているとおりに設定されていることを確認します。
Fiddler を使用してネットワーク トラフィックを調査する
上記のいずれの手順でも問題が解決されない場合は、Fiddler をインストールし、ゲームにより生成されたネットワーク トラフィックを調査することを検討してください。 詳細については、「PC ゲーム用 Xbox サービス トラフィックのトラブルシューティング」 を参照してください。
サンプル
Unreal と GDK のサンプルは、プロジェクトを比較するためのリファレンスとして使用でき、xboxlive.com への呼び出しで想定されるネットワーク トラフィックを確認できます。
Unreal のサンプル
Unreal のサンプル ShooterGame は、GDK と Xbox のサービスを使用するように設定されており、プロジェクト構成と比較するためのリファレンスとしてご利用いただけます。 このサンプルは、「Microsoft Store 用にゲームを構成する」セクションで説明される手順を使用して、パートナー センター プロジェクトの値をゲームに使用できます。
ShooterGame サンプルは、Samples\Games\ShooterGame
の UE ソース レジポトリで確認できます。
GDK サンプル
Achievements2017_desktop GDK サンプルは、Fiddler と組み合わせて、サインインや実績のクエリ実行および設定時のネットワーク トラフィックを確認するためのリファレンスとして使用できます。 Achievements2017_desktop は、独自のパートナー センター プロジェクトで動作するように既に設定されており、既存の構成で使用できます。
GameSave_desktop GDK サンプルは、Fiddler と組み合わせて、クラウド保存用のネットワーク トラフィックを確認するためのリファレンスとして使用できます。 GameSave_desktop は、独自のパートナー センター プロジェクトで動作するように既に設定されており、既存の構成で使用できます。
その他のトラブルシューティングのヒント
その他のトラブルシューティングのヒントについては、「サインインとサンドボックス エラーのトラブルシューティング」を参照してください。
付録
以前のバージョンの Unreal
4.26 より前のバージョンの Unreal を使用している場合は、前の手順の一部に従って、GDK のターゲットを引き続き使用できます。 ただし、プラットフォームの機能を統合し、パッケージを自分で作成する必要があります。 詳細については、「PC 用 Unreal 開発: 使用を開始する (以前のバージョン)」を参照してください。