Skip to main content

クイックスタート: PlayFab Multiplayer Unity プラグイン

PlayFab Multiplayer Unity プラグインを使い始めます。以下の手順に従ってパッケージをインストールし、基本的なタスクのサンプル コードを試してください。 このクイックスタートは、Unity 用 PlayFab Multiplayer SDK を使って最初の API 呼び出しを行うのに役立ちます。続行する前に、クイックスタート: Unity での C# 用 PlayFab クライアント ライブラリ を完了して、PlayFab アカウントを持っており、ゲームからの PlayFab ログインと PlayFab Game Manager に慣れていることを確認してください。
Microsoft Game Development Kit (GDK) を基にしたゲームを開発するためにこのプラグインを使用する予定の場合は、GDK を別途取得してインストールする必要があります。XBOX コンソールの Game Core 用 Unity アドオンについても詳細をご覧ください。

要件

  • PlayFab 開発者アカウント
  • インストール済みの Unity Editor。Unity Hub 経由で個人使用の Unity をインストールする方法や、プロフェッショナル使用の Unity+ については、Unity のダウンロード を参照してください。必要に応じて特定のプラットフォームのドキュメントで Unity のサポートを確認してください。サポートされる最小 Unity バージョンは Unity 2017 LTS です。
  • Unity プロジェクト - 次のいずれかにできます:
    • まったく新しいプロジェクト: 詳細については、Unity を初めて起動する を参照してください。
    • ガイド付きチュートリアル プロジェクト。詳細については、Unity を始める を参照してください。
    • 既存のプロジェクト。
  • PlayFab の「コア」Unity3D SDK (Multiplayer Unity プラグインにも含まれています)。Unity3D SDK のインストールに関する情報については、クイックスタート: Unity での C# 用 PlayFab クライアント ライブラリ の「Download and install PlayFab SDK」セクションを参照してください。

PlayFab Multiplayer Unity プラグインのダウンロードとインストール

PlayFab Multiplayer Unity プラグインをダウンロードしてインストールするには、以下の手順に従います。
  1. PlayFab Multiplayer Unity Plugin の Asset パッケージをダウンロードします (プラットフォームに応じた配布ポイントを使用します)。
  2. 重要! プラグインとともに公開されている README ファイルの情報を参照してください。これは各特定バージョンに合わせて調整されており、プラットフォーム固有の重要な指示が含まれる場合があります。
  3. Unity プロジェクトを開きます。
  4. .unitypackage を保存した場所に移動し、ダブルクリックしてインポート ダイアログを開きます。
  5. PlayFab Multiplayer Unity プラグインをプロジェクトにインポートするには、Import を選択します。
注: 必要に応じて、より新しいバージョンの PlayFab「コア」Unity SDK をインストールする必要がある場合があります。

シーンをセットアップする

ガイドのこの部分では、Unity から PlayFab Multiplayer API を呼び出せるようにするため、シーンに PlayfabMultiplayerEventProcessor を追加する方法を説明します。 Multiplayer API を使用する前に、PlayFab プレイヤーがログインしている必要があります。プレイヤーのログインに関する情報については、クイックスタート: Unity での C# 用 PlayFab クライアント ライブラリの最初の API 呼び出しを行う を参照してください。
  1. Unity Editor の Project ウィンドウで、Assets > PlayFabMultiplayerSDK > Prefabs に移動します。
  2. Prefabs フォルダーから、PlayfabMultiplayerEventProcessorHierarchy ウィンドウのシーンにドラッグ アンド ドロップします。
  3. 「HelloMultiplayerLogic」という空の Game Object をシーンに作成します。
  4. HelloMultiplayerLogic Game Object を選択して Inspector を開きます。
  5. Add Component を選択します。
  6. 「HelloMultiplayerLogic」と入力して Enter キーを押し、新しいスクリプト メニューを表示します。
  7. もう一度 Enter キーを押して、新しいスクリプト HelloMultiplayerLogic.cs を作成します。
  8. Project ウィンドウでスクリプトを見つけ、ダブルクリックしてスクリプトを編集します。
  9. 次の using ステートメントをスクリプトに追加します:
  10. Start メソッドに次のコードを追加して、PlayFab にログインします。
  11. 次のメソッドをクラスに追加します。
次のようなエラーが表示される場合があります: C \# Error CS0227 Unsafe code may only appear if compiling with /unsafe The plugin requires unsafe code because it interops with a native DLL. Mismatch between the processor architecture of the project being built "MSIL" and the processor architecture of the reference "XGamingRuntime", "AMD64".
Microsoft GDK および Windows は x64 のみをサポートしています。 これらの問題を解決するには:
  1. Unity Editor で、File > Build Settings を選択します。
  2. プラットフォームを選択します。次に Architecture ドロップダウンから、x86_64 または x64 のいずれかを選択します。
  3. Player Settings を選択します。
  4. 右ペインで Other Setting を選択します。
  5. Allow unsafe Code 設定を見つけて選択します。
  6. Build Settings および Project Settings ウィンドウを閉じます。

ロビーを作成して参加する

ガイドのこの部分では、ロビーを作成して参加する方法を説明します。
  1. HelloMultiplayerLogic.cs スクリプトを開きます。OnLoginSuccess メソッドに、ロビーを作成して参加するための次のコードを追加します:
  2. OnLobbyCreateAndJoinCompleted イベント ハンドラーを定義するには、クラスに次のコードを追加します:
  3. OnLobbyDisconnected イベント ハンドラーを定義するには、クラスに次のコードを追加します:
  4. 保存して Unity Editor で Play を選択します。Console ウィンドウにロビー接続文字列が表示されます。

ロビーに参加する

ガイドのこの部分では、別のクライアントが作成した既存のロビーに参加する方法を説明します。
  1. HelloMultiplayerLogic.cs スクリプトを開きます。OnLoginSuccess メソッドに、ロビーに参加するための次のコードを追加します:
  2. ローカル クライアントがロビーに参加したときに発生するイベントを定義するには、OnLoginSuccess メソッドに次のコードを追加します:
  3. OnLobbyJoinCompleted イベント ハンドラーを定義するには、クラスに次のコードを追加します:
  4. 保存して Unity Editor で Play を選択します。Console ウィンドウに「Joined a lobby」という文字列が表示されます。

ロビーを検索する

ガイドのこの部分では、他のクライアントが作成した既存のロビーを検索する方法を説明します。
  1. HelloMultiplayerLogic.cs スクリプトを開きます。OnLoginSuccess メソッドに、ロビーを検索するための次のコードを追加します:
  2. ローカル クライアントがロビーを見つけたときに発生するイベントを定義するには、OnLoginSuccess メソッドに次のコードを追加します:
  3. OnLobbyFindLobbiesCompleted イベント ハンドラーを定義するには、クラスに次のコードを追加します:
  4. 保存して Unity Editor で Play を選択します。Console ウィンドウに「Found lobbies」という文字列が表示されます。

マッチメイキング チケットを作成する

ガイドのこの部分では、マッチメイキング チケットの作成方法を説明します。以下の別のクライアントでの「マッチメイキング チケットに参加する」のシナリオと一緒に実行してください。
  1. HelloMultiplayerLogic.cs スクリプトを開きます。OnLoginSuccess メソッドに、マッチメイキング チケットを作成するための次のコードを追加します:
  2. OnMatchmakingTicketStatusChanged イベント ハンドラーを定義するには、クラスに次のコードを追加します:
  3. 保存して Unity Editor で Play を選択します。
membersToMatchWith が指定されている場合、1 つの OnMatchmakingTicketStatusChanged イベント ハンドラーがトリガーされ、Status は WaitingForPlayers になります。その場合、別のクライアントが JoinMatchmakingTicketFromId を呼び出すと、新しい OnMatchmakingTicketStatusChanged イベント ハンドラーがトリガーされ、今回のステータスは WaitingForMatch になります。 または、1 つの OnMatchmakingTicketStatusChanged イベント ハンドラーがトリガーされ、ステータスは WaitingForMatch になります。

マッチメイキング チケットに参加する

ガイドのこの部分では、別のクライアントが作成した既存のマッチメイキング チケットに参加する方法を説明します。上記の別のクライアントでの「マッチメイキング チケットを作成する」のシナリオと一緒に実行してください。
  1. HelloMultiplayerLogic.cs スクリプトを開きます。OnLoginSuccess メソッドに、マッチメイキング チケットに参加するための次のコードを追加します:
  2. OnMatchmakingTicketStatusChanged イベント ハンドラーを定義するには、クラスに次のコードを追加します:
  3. 保存して Unity Editor で Play を選択します。
Status が WaitingForMatch の 1 つの OnMatchmakingTicketStatusChanged がトリガーされます。

マッチメイキング チケットを完了する

ガイドのこの部分では、マッチメイキングが完了する方法を説明します。上記の別のクライアントでの「マッチメイキング チケットを作成する」のシナリオと一緒に実行してください。オプションで「マッチメイキング チケットに参加する」のシナリオと一緒に実行することもできます。
  1. 同じキュー内の複数のチケットがマッチする資格を得ると、マッチが見つかります。その場合、OnMatchmakingTicketCompleted イベント ハンドラーがトリガーされます。
  2. OnMatchmakignTicketCompleted ハンドラーをサブスクライブします
  3. OnMatchmakingTicketCompleted イベント ハンドラーを定義するには、クラスに次のコードを追加します:
最終更新日 2026年8月24日