Install the Unreal Engine SDK
概要
Unreal Engine 用 AccelByte Game Software Development Kit (SDK) を使用して、ゲームに AccelByte Gaming Services (AGS) を実装できます。SDK は、ゲームと AGS サービスの架け橋として機能します。
Unreal Engine SDK をダウンロード前提条件
- Unreal Engine 4 バージョン 4.26 または 4.27、もしくは Unreal Engine 5 バージョン 5.0 または 5.1。
- ゲームの名前空間を作成する。
- IAM クライアントを作成する。
- クライアント ID を作成する。
AGS Starter ティアを使用している場合は、BaseUrl
に次の形式を使用していることを確認してください。そうしないと、ドメインの不一致により API 呼び出しがエラーを返す可能性があります。
https://<Game TitleID>.<environment name>.gamingservices.accelbyte.io
- 開発環境で作業するときは
dev
値を使用する。例:https://spaceshooter.dev.gamingservices.accelbyte.io
- 本稼働環境でローンチする準備ができたら、
prod
値を使用する。例:https://spaceshooter.prod.gamingservices.accelbyte.io
チュートリアル
Unreal Engine SDK を設定する方法については、以下のチュートリアルに従ってください。
Starter ティアでは、Unreal Engine 用の設定ファイルをダウンロードして、今回のインストール用にファイルを保存できます。
セットアップ中は、[Starter tier (Starterティア)]ダッシュボードから設定ファイルをダウンロードできます。これは後ほど AccelByte 管理者ポータルの[OAuth Clients (OAuthクライアント)]ページからダウンロードすることもできます。
AGS Premium にはまだ設定ファイルのダウンロードオプションがありません。
Unreal SDK プラグインをダウンロードしてインストール
Unreal Editor でプロジェクトを開きます。
ダウンロードした SDK からプラグインフォルダ
Plugins/AccelByteUe4Sdk
をコピーして、ゲームのプラグインフォルダに貼り付けます。このプラグインを
[MyAwesomeGame].uproject
ファイルに追加します。"Plugins": [
...
{
"Name": "AccelByteUe4Sdk",
"Enabled": true
},
]
...このプラグインを
/Source/[MyAwesomeGame].Target.cs
ファイルに追加します。ExtraModuleNames.AddRange(new string[]
{
...
"AccelByteUe4Sdk",
...
}このプラグインを
/Source/[MyAwesomeGame]Editor.Target.cs
ファイルに追加します。ExtraModuleNames.AddRange(new string[]
{
...
"AccelByteUe4Sdk",
...
}このプラグインを
/Source/MyAwesomeGame/[MyAwesomeGame].Build.cs
ファイルに追加します。PublicDependencyModuleNames.AddRange(
new string[] {
...
"AccelByteUe4Sdk",
...
}
AccelByte クライアントの設定
SDK を使用する前に、Unreal Editor で AccelByte SDK を設定するか、または .JSON コンテンツを DefaultEngine.ini
に入力します。
Unreal Editor に AccelByte 設定を入力
Unreal Editor でプロジェクトを開きます。
プロジェクトでプラグインを設定していることを確認してください。
最上部のメニューバーで、[Edit > Project Settings (編集 > プロジェクト設定)]に移動します。
[Project Settings (プロジェクト設定)]で、[Plugins (プラグイン)]セクションまでスクロールダウンし、[AccelByte Unreal Engine 4 Client SDK]を選択します。
注記パブリッシャーの名前空間パラメータを空のままにします。
[Client ID (クライアントID)]、[Client Secret (クライアントの秘密)]、[Namespace (名前空間)]、[Redirect Uri (リダイレクト URI)]、[Base Url (ベース URL)]を入力します。残りの入力フィールドは空のままにしてください。
NoteAPI URL がわからない場合は、サポートまたはアカウントマネージャーにお問い合わせください。AGS Starter を使用している場合、開発環境のベース URL は https://dev.gamingservices.accelbyte.io/、**本稼働環境のベース URL** は https://prod.gamingservices.accelbyte.io/ です。
設定を保存するには、[Set as Default (デフォルトに設定)]をクリックします。これで DefaultEngine.ini ファイルが[/Config]フォルダで自動的に入力されます。
JSON コンテンツを DefaultEngine.ini に入力
[ClientId (クライアント ID)]、[ClientSecret (クライアントの秘密)](該当する場合)、[Namespace (名前空間)]、[BaseURL (ベース URL)]、[RedirectUri (リダイレクト URI)]が AccelByte 管理者ポータルの設定と一致していることを確認してください。API URL がわからない場合は、サポートまたはアカウントマネージャーにお問い合わせください。詳細については、IAM クライアントの説明をお読みください。
[
/Config
]フォルダでDefaultEngine.ini
を開きます。次の形式で情報を入力します。
注記パブリッシャーの名前空間は空白のままにします。
[/Script/AccelByteUe4Sdk.AccelByteSettings]
ClientId=<client_id>
ClientSecret=<client_secret>
Namespace=<namespace>
PublisherNamespace=<>
RedirectURI="http://127.0.0.1"
BaseUrl=<base_url>
AppId=<app_id>備考ClientId (クライアント ID)、ClientSecret (クライアントの秘密) (該当する場合)、Namespace (名前空間)、AppId (Steam ゲーム用)、BaseURL (ベース URL)、RedirectUri (リダイレクト URI) を確実に入力してください。AccelByte 管理者ポータルで ClientId、ClientSecret、Namespace の設定を見つけるか、または IAM クライアントを読んでください。
API URL がわからない場合は、サポートまたはアカウントマネージャーにお問い合わせください。AGS Starter を使用している場合、開発環境のベース URL は https://dev.gamingservices.accelbyte.io/、**本稼働環境のベース URL** は https://prod.gamingservices.accelbyte.io/ です。
追加機能
AccelByte は追加機能をサポートしていて、[/Script/AccelByteUe4Sdk.AccelByteSettings]
で有効化できます。
クライアント側でのデータキャッシング (インメモリ):静的データ/ファイルをメモリにキャッシュして、HTTP 呼び出しを減らすことができるようになりました。この機能を有効にするには、応答を送信するサービスが HTTP Cache Control ヘッダーを提供できることを確認します。
[/Script/AccelByteUe4Sdk.AccelByteSettings]
...
bEnableHttpCache=trueサービス品質 (QoS) 定期レイテンシアップデータ:指定されたすべての領域のレイテンシを更新するスケジューラを作成しました。この機能は、ゲームデベロッパーが複数のリージョンでマッチメイキングを実装するのに役立ちます。
スケジューラの時間間隔を指定できます。システムは、マッチメイキングの前にボトルネックを排除するためにレイテンシを更新する必要があるため、認証レベルでポーリングを開始します。マッチメイキングを開始する前に、プレイヤーは自分のリージョンのレイテンシ (ping) を知りたいかもしれません。
[/Script/AccelByteUe4Sdk.AccelByteSettings]
...
QosLatencyPollIntervalSecs=0
QosServerLatencyPollIntervalSecs=0両方のパラメータのデフォルト値は 0 です。
スケジューラを有効にするには、QosLatencyPollIntervalSecs を 0 より大きい値に設定します。この機能が作動している場合、最小ポーリング間隔は 10 分です。
他のリージョンのスケジューラを有効にするには、QosServerLatencyPollIntervalSecs を 0 より大きい値に設定します。
おめでとうございます!Unreal Engine で使用する AccelByte Game SDK の設定に成功しました。