PUN Classic (also called PUN1) is the original and first major version of PUN. It is now replaced by PUN2 which is refactored and enhanced. We highly recommend starting new projects with PUN2 and if possible migrating existing ones from PUN1 to PUN2 by following our "Migration Notes". PUN Classic will be maintained for the coming months. We will fix important bugs and support new Unity versions but new features will be added only to PUN2.

リージョン

Photon Cloudを利用すれば、世界中で低レイテンシーのゲームを実行するためのグローバルな接続が可能になります。

クライアントはまずネームサーバーに接続し、ネームサーバーは利用可能なリージョンのリストを提供します。 通常は「ベストリージョン」の選択が有効化されており、最低pingのリージョンが検知されてクライアントはこのリージョンに接続します(下図を参照してください)。

各リージョンは他のリージョンから完全に分離しており、リージョンはマスターサーバー(マッチメイキング用)とゲームサーバー(ルームのホスティング)から成ります。

Photon Cloud Regions' Connect Flows
Photon Cloud リージョンへの接続

以下は、利用可能なリージョンの完全なリストです。 クライアントが利用できるリージョンはダッシュボードで定義できます。

Contents

PUNでリージョンをセットアップ

ConnectToBestCloudServer(string gameVersion) クライアントを、最低pingのマスターサーバーに接続します。 すべてのPhoton Cloudマスターサーバーへのping送信の結果は、PlayerPrefに保存されます。

明示的に別のリージョンを「ベスト」として設定するにはOverrideBestCloudServer(CloudRegionCode region) を使用してください。

リージョンをPhotonServerSettingsアセット編集の一部としてセットアップできます。 リージョンへの接続は、PhotonNetwork.ConnectUsingSettings()を呼び出せば簡単におこなえます。

PUNを使用した追加セットアップは、初期設定ドキュメントを参照してください。

Photon Cloud Regions' Connect Flows
Photon Cloudリージョンへの接続

Back To Top

ベストリージョンの検討

「ベストリージョン」オプションは、決定的なものではありません。 リージョンにあまり差がない場合や、まったく同じping計算がされた場合には、「ランダム」になる可能性があります。

理論上は以下の設定が可能です: - 同一デバイスから、複数リージョンに対してまったく同じpingを設定します。同じネットワークに接続したクライアント上で異なるリージョンに接続する場合には、ランダムになります。 - 同じネットワークに接続した異なるデバイス上(または同じデバイス上で異なる試行を実行する)で、同じリージョンに対して異なるping値を設定します。

たとえば、「us」と「usw」(または「ru」と「rue」)の場合、オンラインリージョンのホワイトリストを使用してリージョンを選択するか、または明示的にリージョンに接続します。

Back To Top

利用可能なリージョン

Photon Cloudは、複数のリージョンにサーバを設置しています。これらは世界各地のホスティングセンターに設置されています。

各Photon Cloudリージョンは「リージョントークン」で識別されます。 クライアントの「Connect」メソッドでリージョントークンを渡すには、PhotonNetwork.ConnectToRegionMaster(regionCode, gameVersion)を呼びます。

利用可能なリージョンとトークンの一覧は以下のとおりです:

リージョントークン(またはコード)の文字列は、大文字小文字を識別しません。 : "EU" と "eu" は両方とも同じヨーロッパリージョンを指します。
リージョンホスティングされている場所トークン
アジアシンガポールasia
オーストラリアメルボルンau
カナダ(東)モントリオールcae
中国本土1 (手順を参照してください)上海cn
ヨーロッパアムステルダムeu
インドチェンナイin
日本東京jp
ロシアモスクワru
ロシア(東)ハバロフスクrue
南アフリカ2ヨハネスブルグza
南米サンパウロsa
韓国ソウルkr
アメリカ(東)ワシントンD.C.us
アメリカ(西)サンノゼusw

1: 中国本土では、個別のAppIdと購読が必要です。 2: 南アフリカはまだ予備段階であり、テスト中です。

Back To Top

ダッシュボードでのリージョンのフィルタリング

アプリケーションごとに利用可能なPhoton Cloudのリージョンのリストを、ダッシュボードからすぐにフィルタリングできます。

Photon Cloud: Regions Whitelist
Photon Cloudリージョンのフィルタリング

ダッシュボードを開き、該当のアプリケーションの「管理」をクリックしてから、「編集」をクリックします。 ホワイトリストに登録されたリージョンのリストを入力できる、入力フィールドが以下のように表示されます。

  • セミコロンで区切られたリージョントークン(例:「eu;us」)の文字列のみが、リストとして許可されます。
  • リージョントークンは大文字・小文字が区別され、こちらで定義されます。
  • 定義されていない、または認識されていないリージョントークンはリストから無視されます。
  • 空 (「」) または不正な形式の文字列(例 「;;;」)は空のリストを意味します。
  • 空のリストとは、利用可能なすべてのリージョンが許可されていることを意味します。

確認して保存すると、それ以降はオペレーション GetRegions はフィルタリングされたリージョンのリストのみを返します。 このため、クライアントはそのリストから選択する必要があります。ただし、クライアントは利用可能なリージョンに明示的に接続することも可能です。 ダッシュボードの更新が反映されるには、最大で10分間かかる点を考慮してください。

Back To Top

中国本土のリージョンを使用

まず、Photonアプリケーション用に中国本土リージョンへのアクセスをリクエストする必要があります。弊社宛にメールでご連絡ください。お客様のAppID用に解除します。
弊社のウェブサイトから、中国本土地域で使用される有償プランに申し込むことはできません。 有償プランの見積については、メールでご連絡ください。

ファイアウォールによってトラフィックがブロックされる可能性があるため、中国ローカルのPhotonネームサーバーを使用する必要があります。 中国のPhotonネームサーバーは「ns.photonengine.cn」 です。

中国本土外からクライアントに接続しても、良い結果は得られません。 また、Photonサーバーから中国本土外のサーバーへの接続(たとえば、カスタム認証、Webhook、WebRPCなどで)は信頼性が高くありません。

重要: ダッシュボードでアプリケーションに変更を加えた場合、現段階では中国のアプリケーションのキャッシュに自動的に反映されません。 アップデートをご希望の場合には、弊社宛にメールでご連絡ください。

また、法的な理由から中国向けには個別のビルドが必要となります。弊社は各ビルドに個別のAppIDを使用することを推奨しています。 たとえば、ビルドごとに(任意の)コンパイル条件を使用してAppIDやPhotonネームサーバーを変更します。

中国マーケット用に特別なビルドを作成するには、お使いのクライアントSDKの手順を参照してください。

  1. 中国リージョンが解除されたアプリケーションにAppIDを設定します。 同一プロジェクト内で、複数のビルドが有る場合には以下を参照してください:
        void Awake()
    {
    // TODO: replace compile condition with your own
    #if CHINA
        PhotonNetwork.PhotonServerSettings.AppID = "ChinaPUNAppId"; // TODO: replace with your own AppId
    #else
        PhotonNetwork.PhotonServerSettings.AppID = "nonChinaPUNAppId"; // TODO: replace with your own AppId
    #endif
    }
  2. 「NetworkingPeer.cs」ファイルを開き、「ns.photonengine.cn」にNameServerHostを設定してください:

  3. CloudRegionCodeCloudRegionFlagのenumを更新し、新たな「CN」(または「cn」)リージョントークンを以下のように追加してください:

  4. PhotonNetwork.ConnectToRegion(CloudRegionCode.cn, gameVersion)を使用して、中国本土リージョンに接続してください。

To Document Top