> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Unity クイックスタート

> PlayFab Unity SDK をインストールし、Unity プロジェクトのエディターとクライアント ライブラリから C# で最初の PlayFab クライアント API 呼び出しを行います。

# クイックスタート: Unity で C# 用 PlayFab クライアント ライブラリを使用する

Unity で C# 用 PlayFab クライアント ライブラリを使い始めましょう。パッケージをインストールし、基本的なタスクのサンプル コードを試すための手順を紹介します。

このクイックスタートでは、Unity エンジンで最初の PlayFab API 呼び出しを行う手順を解説します。

## 要件

* [PlayFab デベロッパー アカウント](https://developer.playfab.com)。
* Unity エディターがインストールされていること。個人利用向けの Unity を Unity Hub からインストールする場合や、プロフェッショナル用途向けの Unity+ を利用する場合は、[Unity のダウンロード](https://unity.com/download) を参照してください。

<Note>
  PlayFab Unity SDK は、Unity エディター バージョン 5.3 (2015 年 12 月リリース) 以降をサポートしています。
</Note>

* 以下のいずれかの種類の Unity プロジェクト。
  * まったく新しいプロジェクト。詳細については、[Starting Unity for the first time](https://docs.unity3d.com/Manual/get-started-with-unity.html) を参照してください。
  * ガイド付きチュートリアル プロジェクト。詳細については、[Getting Started with Unity](https://learn.unity.com/) を参照してください。
  * 既存のプロジェクト。
* PlayFab Unity SDK。

## PlayFab SDK のダウンロードとインストール

SDK のインストールには、PlayFab Editor Extensions パッケージを使うか、SDK を直接インストールします。PlayFab Editor Extensions は、SDK のインストールとタイトルの一部の PlayFab 設定を効率化する、スタンドアロンの Unity プラグインです。PlayFab Editor Extensions を使用せずに SDK をインストールする方法については、[Installing the PlayFab SDK Without Editor Extensions for Unity](/services/playfab/sdks/unity3d/installing-unity3d-sdk#download-and-install-the-sdk-only) を参照してください。

1. [PlayFab Unity Editor Extensions Asset Package](https://aka.ms/PlayFabUnityEdEx) をダウンロードします。
2. Unity プロジェクトを開きます。
3. ダウンロードしたファイルの場所に移動し、`PlayFabEditorExtensions.UnityPackage` ファイルをダブルクリックして、Unity エディターの **Import Unity Package** ダイアログを開きます。

   <img src="https://mintcdn.com/microsoft-4404708b/N3T1ucKV7zIMBudj/images/playfab/sdks/unity3d/import-uedex.png?fit=max&auto=format&n=N3T1ucKV7zIMBudj&q=85&s=7fe7482c3981c4c09469872bc7ee6bc1" alt="Unity Asset パッケージのインポート" width="352" height="582" data-path="images/playfab/sdks/unity3d/import-uedex.png" />
4. プロジェクトに PlayFab Unity Editor Extensions をインポートするには、**Import** を選択します。
5. インポートが完了すると、PlayFab Unity Editor Extensions パネルが自動的に開き、SDK インストール ダイアログが表示されます。

<Note>
  パネルが開かない場合や、パネルを閉じてから再度開きたい場合は、**Window** > **PlayFab** > **Editor Extensions** を選択して開くことができます。
</Note>

<img src="https://mintcdn.com/microsoft-4404708b/N3T1ucKV7zIMBudj/images/playfab/sdks/unity3d/install-sdk.png?fit=max&auto=format&n=N3T1ucKV7zIMBudj&q=85&s=ef1dddd1a1f2e66865c1ffae2f972fbe" alt="PlayFab SDK のインストール" width="395" height="384" data-path="images/playfab/sdks/unity3d/install-sdk.png" />

6\. **Install PlayFab SDK** を選択して、SDK をプロジェクトへ自動的にインポートするか、現在インストールされているバージョンをアップグレードします。

## タイトル設定を指定する

API 呼び出しを行う前に、**PlayFabSharedSettings.asset** を作成し、呼び出しを受信するタイトル ID を指定する必要があります。タイトル ID を設定するには:

1. **PlayFab** > **MakePlayFabSharedSettings** を選択します。これで設定アセットが作成され、Inspector パネルで開かれます。

2. Inspector で **Title ID** を設定します。

   <img src="https://mintcdn.com/microsoft-4404708b/N3T1ucKV7zIMBudj/images/playfab/sdks/unity3d/playfab-shared-settings-title-id.png?fit=max&auto=format&n=N3T1ucKV7zIMBudj&q=85&s=6d2534c5573758d21d3f860adcab8f65" alt="PlayFab タイトル ID 設定" width="1018" height="510" data-path="images/playfab/sdks/unity3d/playfab-shared-settings-title-id.png" />

3. 以降はいつでも、Editor Extensions パネルの **Settings** タブから現在のタイトル ID を確認して変更できます。

**Developer Secret Key** は既定では設定されていません。サーバー ビルドを作成する場合は、**PlayFabSharedSettings.asset** にシークレット キーを必ず設定してください。

<img src="https://mintcdn.com/microsoft-4404708b/N3T1ucKV7zIMBudj/images/playfab/sdks/unity3d/playfab-shared-settings-secret-key.png?fit=max&auto=format&n=N3T1ucKV7zIMBudj&q=85&s=35f6f7c6dcd9094e0699bfa967b8ec77" alt="PlayFab Developer Secret Key 設定" width="1018" height="510" data-path="images/playfab/sdks/unity3d/playfab-shared-settings-secret-key.png" />

**Developer Secret Key** はタイトルの既定のシークレット キーに自動的に設定されます。シークレット キーの詳細については、[Secret key management](/services/playfab/live-service-management/gamemanager/secret-key-management) を参照してください。

ゲーム クライアントをビルドする場合は、シークレット キー**が設定されていない**ことを必ず確認してください。シークレット キーの詳細については、[Secret key management](/services/playfab/live-service-management/gamemanager/secret-key-management) を参照してください。

<Note>
  Extensions を使用すると、PlayFab へのリクエストに使う HTTP トランスポートをカスタマイズできます。推奨される既定値は Unity Web Request です。古いエンジン バージョンとの互換性やゲーム固有の HTTP 実装との互換性を保つためのオプションもあります。
</Note>

## 最初の API 呼び出しを行う

このガイドのこのセクションでは、最初の PlayFab API 呼び出しを行うための最小限の手順を紹介します。この例では GUI や画面上のフィードバックは提供しません。確認はコンソール ログに表示されます。

1. Unity プロジェクトに *Scripts* フォルダーがない場合 (**HDRP** および **LWRP/URP** テンプレートには既定で存在します)、Project パネルで **Assets** フォルダーを右クリックし、**Create** > **Folder** を選択します。
2. **Assets** ウィンドウで、フォルダーに *Scripts* という名前を付けます。
3. Scripts フォルダーを右クリックし、**Create** > **C# Script** を選択します。
4. スクリプトに PlayFabLogin という名前を付けます。
5. ファイルをダブルクリックしてコード エディターで開きます。
6. コード エディターで、PlayFabLogin.cs の内容を以下のコードに置き換えてファイルを保存します。

   ```csharp theme={null}
   using PlayFab;
   using PlayFab.ClientModels;
   using UnityEngine;

   public class PlayFabLogin : MonoBehaviour
   {
       public void Start()
       {
           if (string.IsNullOrEmpty(PlayFabSettings.staticSettings.TitleId)){
               /*
               Please change the titleId below to your own titleId from PlayFab Game Manager.
               If you have already set the value in the Editor Extensions, this can be skipped.
               */
               PlayFabSettings.staticSettings.TitleId = "42";
           }
           var request = new LoginWithCustomIDRequest { CustomId = "GettingStartedGuide", CreateAccount = true};
           PlayFabClientAPI.LoginWithCustomID(request, OnLoginSuccess, OnLoginFailure);
       }

       private void OnLoginSuccess(LoginResult result)
       {
           Debug.Log("Congratulations, you made your first successful API call!");
       }

       private void OnLoginFailure(PlayFabError error)
       {
           Debug.LogWarning("Something went wrong with your first API call.  :(");
           Debug.LogError("Here's some debug information:");
           Debug.LogError(error.GenerateErrorReport());
       }
   }
   ```

<Info>
  提供されたコードはモバイル タイトルでの使用を想定していません。これはあくまで例であり、`CustomID` を使ったログインの方法を示すものです。モバイル タイトルのログインを実装するには、以下のいずれかを使用してください。
</Info>

[LoginWithAndroidDeviceID](xref:titleid.playfabapi.com.client.authentication.loginwithandroiddeviceid)、[LoginWithIOSDeviceID](xref:titleid.playfabapi.com.client.authentication.loginwithiosdeviceid)、または [LoginWithFacebook](xref:titleid.playfabapi.com.client.authentication.loginwithfacebook) のようなソーシャル ログインを使用します。
7\. **Hierarchy** パネルでシーンを右クリックし、**Create Empty** (古いバージョンの Unity では **Game Object** > **Create Empty**) を選択します。
8\. 新しい Game Object を選択し、**Inspector** パネルで **Add Component** を選択します。
9\. コンポーネントのドロップダウン メニューから **Scripts** > **PlayFabLogin** を選択します。

Unity エディターでのスクリプトの作成と使用の詳細については、Unity ドキュメントの [Creating and Using Scripts](https://docs.unity3d.com/Manual/CreatingAndUsingScripts.html) を参照してください。

## 完了と実行

これでサンプルをテストする準備が整いました。

* すべてのファイルを保存し、Unity エディターに戻ります。
* エディター上部の **Play** ボタンを押します。

Unity のコンソール パネルに以下のメッセージが表示されるはずです。

<img src="https://mintcdn.com/microsoft-4404708b/N3T1ucKV7zIMBudj/images/playfab/sdks/unity3d/first-call-log.png?fit=max&auto=format&n=N3T1ucKV7zIMBudj&q=85&s=7f898d9ade63a607072bd75daeebf12d" alt="最初の API 呼び出しのコンソール ログ" width="600" height="242" data-path="images/playfab/sdks/unity3d/first-call-log.png" />

<Tip>
  あるいは、PlayFab にログインして Game Manager でタイトルに移動し、**PlayStream Monitor** タブを選択することもできます。実行中の Unity タイトルからフォーカスを外すたびにイベントが送信され、PlayStream Monitor で確認できます。
</Tip>

利用可能なすべてのクライアント API 呼び出しの一覧については、[PlayFab API リファレンス](/services/playfab/api-references) を参照してください。

## 次のステップ

このクイックスタートでは、ユーザー認証の簡略化された手順を示しています。ユーザー認証の詳細については、[Login basics and best practices](/services/playfab/identity/player-identity/login/login-basics-best-practices) を参照してください。

複数のデバイスやログイン メカニズムにアカウントを紐付ける方法については、[アカウント リンクのクイックスタート](/services/playfab/identity/player-identity/login/quickstart) を参照してください。


## Related topics

- [クイックスタート](/ja-jp/services/playfab/economy-monetization/economy-v2/quickstart.md)
- [Lobby SDK クイックスタート](/ja-jp/services/playfab/multiplayer/lobby/lobby-getting-started.md)
- [Photon クイックスタート](/ja-jp/services/playfab/live-service-management/service-gateway/add-ons/photon/quickstart.md)
- [Multiplayer Unity プラグイン クイックスタート](/ja-jp/services/playfab/multiplayer/lobby/lobby-matchmaking-sdks/multiplayer-unity-plugin-quickstart.md)
- [CloudScript クイックスタート](/ja-jp/services/playfab/live-service-management/service-gateway/automation/cloudscript/quickstart.md)
