Play Games PC SDK を使用すると、Google Play 開発者サービスにアクセスして、PC でゲームを構築し、収益化できます。Play 請求サービスを使用してデジタル コンテンツを販売し、Play Games を使用してシームレスにログインし、Play Integrity を使用してユーザーがアプリの有効な利用資格を持っていることを確認できます。
今後の機能、安定版リリース、統合 アーキテクチャの概要については、Play Games PC のロードマップをご覧ください。
準備ができたら
前提条件
Google Play Console 内でアプリのエントリを作成し、Google Play のパッケージ名を申請します。
PC 版 Google Play Games をダウンロードしてインストールし、 Google アカウントでログインします。
ステップ 1: プロジェクトに SDK を追加する
C++
Play Games PC C++ SDK をダウンロードします。
API ヘッダー フォルダ
includes/をアプリケーションのコードベースにコピーします。ターゲット アーキテクチャに応じて、再配布可能なファイルを
imports/ディレクトリからアプリケーションのプロジェクトにコピーします。64 ビット(x64)の場合:
imports/x64/からファイルをコピーします。32 ビット(x86)の場合:
imports/x86/からファイルをコピーします。play_pc_sdk.libに対してプロジェクトをリンクし、play_pc_sdk.dllのコンテンツにアクセスできるようにします。
C#
Play Games PC Unity SDK を tarball(.tgz)ファイルとしてダウンロードします。
SDK は、Unity Package Manager(UPM) と互換性のある tarball(.tgz)として配布されます。パッケージをインポートするには、 ローカルの tar ファイルから UPM パッケージをインストールするをご覧ください。
詳細なドキュメント、設定手順、その他のガイダンスについては、 Play PC Unity パッケージのページをご覧ください。
ステップ 2: マニフェスト ファイルを追加する
ゲーム内で SDK を使用するには、ゲームの実行可能ファイルを、Google Play Console で申請した Google Play のパッケージ名に関連付ける必要があります。これを行うには、ゲームの実行可能ファイルと同じディレクトリに manifest.xml ファイルを追加します。
manifest.xml の内容の例:
<?xml version="1.0" encoding="utf-8"?>
<Manifest version="1">
<Application>
<PackageName>com.example.package</PackageName>
</Application>
</Manifest>
manifest.xml の配置例:
C:\Program Files
└───Example Game
├───Game.exe
└───manifest.xml
ステップ 3: ゲームにデジタル署名する
ゲームで SDK を使用するには、Authenticode デジタル署名を使用してゲームの実行可能ファイルにデジタル 署名する必要があります。 Authenticode デジタル署名。 実行可能ファイルに署名する方法については、 SignTool のドキュメントをご覧ください。
ゲームにデジタル署名するプロセスが完了したら、構成のために証明書情報を Google の担当者に送信してください。
ステップ 4: SDK を初期化する
ゲームの起動シーケンス中に SDK を初期化します。これはユーザー操作を必要とせずに自動的に行う必要があります。ゲーム ウィンドウをレンダリングする前に、初期化が成功したことを確認することをおすすめします。 これにより、エラーをできるだけ早く表面化して解決することで、最高のユーザー エクスペリエンスを提供できます。また、ゲーム プロセスを終了する必要がある場合に、ゲーム ウィンドウが一時的に表示されるのを防ぐことができます。
GooglePlayInitialize(C++)/
GooglePlayInitialization.InitializeAsync(C#)を呼び出して API を初期化し、SDK の使用を開始します。これにより、グローバル状態が設定され、SDK ランタイムに接続され、アプリケーションが正しく起動されたことが確認されます。他の API を使用する前に、これを呼び出し、継続コールバックが InitializeResult::ok()(C++)/ Result.IsOk(C#)が true で完了する必要があります 。
C++
// Initialize the SDK as part of the startup sequence of your application.
auto promise = std::make_shared<std::promise<InitializeResult>>();
GooglePlayInitialize(
[promise](InitializeResult result) {
promise->set_value(std::move(result));
});
auto initialize_result = promise->get_future().get();
if (initialize_result.ok()) {
// The SDK succeeded with initialization. Continue with the startup sequence
// of the game.
// ...
} else if (initialize_result.code() == InitializationError::kActionRequiredShutdownClientProcess) {
// The SDK failed to initialize and has requested that your game process exit
// as soon as possible.
exit(