メインコンテンツへスキップ
このエンティティ クイックスタートでは、エンティティ オブジェクトとエンティティ ファイルの操作方法を示します。 レガシー アカウントおよびデータ システムから PlayFab エンティティへの移行についての情報は、エンティティ移行情報 を参照してください。

要件

  • PlayFab 開発者アカウント。
  • インストール済みの Unity Editor。Unity Editor のインストールについては、Unity ドキュメントの Installing Unity を参照してください。Visual Studio の機能インストーラーを使用して Unity のバージョンをインストールすることもできます。
PlayFab Unity3D SDK は、Unity Editor バージョン 5.3 以上をサポートします。
Unity に不慣れな場合は、最近のインストール パッケージにはゲーム作成のウォークスルーをインストールするオプションが含まれています。ウォークスルーの 1 つを使って、次のクイックスタートで使用するサンプル ゲームを作成できます。
  • PlayFab Unity3D SDK。
この記事の C# サンプルは Unity SDK 用に書かれています。Unity SDK は、非同期タスクを処理するためにイベント駆動モデルを使用します。C# SDK を使用してサンプル コードを実行するには、コードを async Task モデルを使用するように変更する必要があります。変更が必要なメソッドは、シグネチャのメソッド名に Async が付加されます。たとえば、Unity SDK の SetObject は、C# SDK では SetObjectAsync になります。詳細については、async と await による非同期プログラミング を参照してください。

用語

エンティティとは、データを保持できる任意の PlayFab 概念です。組み込みのエンティティ タイプは次のとおりです。
  • title - タイトルには、すべてのプレイヤーが利用可能なグローバル情報が含まれます。これは TitleData に似ています。ゲーム/アプリケーションのタイトル ID (TitleId) で識別されます。
  • master_player_account - このエンティティ タイプを使用すると、名前空間内の複数のゲーム間でプレイヤーに関する情報を共有できます。プレイヤーのプレイヤー ID (PlayFabId) で識別されます。これは、ログインの一部として、またはプレイヤー アカウントのアカウント情報を取得する呼び出し (たとえば、PlayFab Client API の GetAccountInfo) から返されます。
  • title_player_account - 現在のタイトルの情報を保持するプレイヤー アカウントを識別します。これは、任意のログインで EntityKey オブジェクトから返されるエンティティ ID (EntityKey.Id) で識別されます。
  • character - プレイヤーが所有するキャラクターを識別し、取得可能な情報を保持します。キャラクターのキャラクター ID (CharacterId) で識別されます。
組み込みのエンティティ タイプの詳細については、利用可能な組み込みエンティティ タイプ を参照してください。

エンティティの初期化

いずれかの Entity API を呼び出すには、エンティティの ID と Type を取得する必要があります。この ID と Type を使用して他の Entity API メソッドを呼び出します。これらは EntityKey オブジェクトのメンバーです。 これは、LoginWithCustomID などのログイン メソッドを呼び出すことで行います。
GetEntityToken メソッドを呼び出して、エンティティの ID と Type を取得することもできます。
クライアントから呼び出された場合、これは通常、ログイン中のプレイヤーを表します。ゲーム サーバーから呼び出された場合は、タイトルを表します。

エンティティ オブジェクト

エンティティ オブジェクトを使用すると、エンティティに関連付けられた小さな JSON でシリアライズ可能なオブジェクトを読み書きできます。すべてのエンティティ タイプは GetObjects メソッドと SetObjects メソッドをサポートします。 次のコード スニペットは、title_player_account エンティティに Object を設定して読み取る方法を示しています。 プレイヤーまたはタイトルにエンティティ オブジェクトを設定するには、SetObjects メソッドを使用します。
プレイヤーまたはタイトルのエンティティ オブジェクトを取得するには、GetObjects メソッドを使用します。

エンティティ ファイル

エンティティ ファイルを使用すると、任意の形式でエンティティに関連付けられたファイルを読み書きできます。 エンティティ ファイルを取得するには、GetFiles メソッドを使用します。
エンティティのプロファイルへのファイル アップロードを開始するには、initiatefileuploads メソッドを使用します。
エンティティのプロファイルに対する保留中のファイル アップロードを中止するには、AbortFileUploads メソッドを使用します。
エンティティのプロファイルへのファイル アップロードを確定するには、FinalizeFileUploads メソッドを使用します。エンティティ システムは、アトミック アップロード操作が正常に確定されるまで、ファイル アップロードを完了とはみなさず、他の呼び出し元にも変更を反映しません。
以下の例は、ログインからファイルの読み込み、そして新しいファイルのアップロードまでの完全なエンティティ ファイル ループを示します。 手順は次のとおりです。
  • ログインしてエンティティの ID と Type を取得します。
  • アトミック アップロード操作を初期化します。
  • すべてのファイルをアップロードします。
  • アトミック アップロード操作を確定します。
わかりやすくするため、この例では 1 度に 1 ファイルを保存しますが、複数ファイルをアトミックにセットとしてアップロードすることもできます。 この例では、Unity 3D エンジンの使用方法に慣れていることを前提としています。
各ファイル操作には多数のステップと複数の API 呼び出しが必要になるため、同じファイルに対して複数の方法で同時にアクセスしないでください。十分に注意すれば、ロック メカニズムは不要になるかもしれません。複雑な処理を行いたい場合は、ロック メカニズムがはるかに複雑になる可能性があります。

Game Manager とエンティティ

Game Manager を使用すると、プレイヤーのオブジェクトとファイルを操作できます。プレイヤーの概要には、title player アカウントと master player アカウントの両方の情報が表示されます。 Game Manager - Entities - Player overview さらに、ファイルとオブジェクトは Players タブに専用のセクションを持つようになりました。 Game Manager - Entities - Player Files and Objects

関連項目

PlayFab ブログの Introducing Entities, Objects and Files。
最終更新日 2026年10月19日