ホストの移行
Level
INTERMEDIATE
概要
Fusion Host Migration サンプルは、HostModeにあるホストを、元のホストがセッションから脱落した後に別のクライアントに移行する方法を紹介しています。
注意: Host Migration API の完全な説明は、ホスト移行に関するマニュアルページ を参照してください。
Photon Insiders Stream - Fireside Chat - ホスト移行(2022年3月1日)
はじめる前に
サンプルを実行するには、まず、PhotonEngine Dashboard で Fusion AppId を作成し、それを PhotonAppSettings (Fusion メニューからアクセス) のApp Id Fusionフィールドに貼り付けます。次に、Gameシーンを読み込んで、Playを押してください。
ダウンロード
| バージョン | リリース日 | ダウンロード | |
|---|---|---|---|
| 1.1.6 | Sep 26, 2024 | Fusion Host Migration 1.1.6 Build 665 | |
プレハブ
GameController.prefab: ゲーム自体の制御とHost Migrationの実行を行います。FusionRunner.prefab: Fusion のNetworkRunnerプレハブで、Fusion を正しく動作させるために必要なものが全て含まれています。このプレハブは、ゲーム実行時にNetworkRunnersを作成するために使用されます。Goal.prefab: シンプルなゲームの目的。プレイヤーがインタラクティブなオブジェクトをドラッグする場所です。Interactable.prefab:プレイヤーの方向に引っ張られるインタラクタブルオブジェクトです。Player.prefab: プレイヤーのプラファブです。
シーン
Game- サンプルのメインシーンで、基本的なグランドレベルとゲームを実行するために必要なプレハブのみが格納されています。起動すると、クライアントを起動するためのスタートメニューが表示され、ランダムなゲームに接続するか、新しいゲームを作成します。
動作
GameController: このクラスはサンプルのメインエントリーポイントです。NetworkRunnersの管理、セッションの接続と作成、そして最も重要なのはホストの移行を実行することです。詳細はGameController.OnHostMigrationのコードを参照してください。GoalController: プレハブであるGoalのコントローラです。Interactableの存在を検知し、プレイヤーのスコアを増加させるロジックを呼び出します。InteractableController:Interactableプレハブのコントローラです。近くにいるプレイヤーをチェックし、プレイヤーに引き寄せられるようにそちらに移動します。PlayerController: プレハブPlayerのコントローラ。移動方向に応じてプレイヤーを移動させます。ConnectionTokenUtils: クライアントが自分自身を識別するために使用するUnique Tokenを作成するためのユーティリティメソッド群です。