マルチプレイ

Level Advanced

概要

Multiplay は、専用サーバーのオーケストレーション を念頭に置いて構築されたUnityホスティングサービスソリューションです。サーバーの健康状態の追跡やダウンタイムなしの更新など、さらに多くの機能を提供します。 より詳細な情報は、Multiplayの公式サイトで確認することができます。

このページでは、Multiplayを使用してDedicated Serverをデプロイし、実行するために必要なPhoton Fusion SDKの設定について説明します。

外部リンク

  • Multiplay - Get started: https://docs.unity.com/game-server-hosting/guides/get-started.html
  • Multiplay - Integration Requirements: https://docs.unity.com/game-server-hosting/concepts/integration-requirements.html
  • Fusion 専用サーバーサンプル

実行方法

FusionをDedicated ServerとしてMultiplay上で動作させるのは、起動時にピアが特定のポートにバインドされることだけが主な要件であり、実に簡単です。

Fusionのネットワークで重要なのは、上記のリンクにある動的なIPアドレス動的なポート番号です。 Multiplay ホスト上で動作するピアは、IP 0.0.0.0 (extra info) と、コマンドライン引数または設定ファイルから渡される port にバインドすることが必要です。 詳しくは Launch parameters のページを参照してください。

グローバルクラウドホスティングサービス上で専用サーバーを実行する際のもう一つの重要な点は、サーバーが実行される地理的な場所です。Fusionサーバーは、Photon Cloudのリージョンに接続する必要があるため、サーバーに最適なリージョンを選択する必要があります。下記のRegion Reference Mappingを確認してください。

portregion の値が実行ファイルに渡されると、以下のようにFusionを起動することができます。

private Task<StartGameResult> StartSimulation(
  NetworkRunner runner,
  string SessionName,
  ushort port,
  string customRegion,
) {

  // Build Custom Photon Config
  var photonSettings = PhotonAppSettings.Instance.AppSettings.GetCopy();

  if (string.IsNullOrEmpty(customRegion) == false) {
    photonSettings.FixedRegion = customRegion.ToLower();
  }

  // Start Runner
  return runner.StartGame(new StartGameArgs() {
    SessionName = SessionName,                  // Custom Session Name
    GameMode = GameMode.Server,                 // Game mode always set to Server
    Address = NetAddress.Any(port),             // EndPoint to bind: 0.0.0.0:port
    CustomPhotonAppSettings = photonSettings,   // Custom Photon App Settings
    // other arguments
  });
}

追加情報

リージョン参照マッピング

マルチプレイリージョン Photon リージョン
US West US
US East US
US Central US
Europe EU
Russia EU
North East Asia (Japan/Korea) JP
South East Asia (Singapore) ASIA
Australia / Oceania ASIA
India ASIA
South America SA
China CN


ドキュメントのトップへ戻る