v1.2.11での新機能
主な変更点:
変更の完全なリストについては、こちらのログを確認してください。
PlayFab Servers 2.0の対応
このバージョンでは、クラウドホスティングサービスへの対応に、Thunderheadとも呼ばれる新しいAzure PlayFab Servers 2.0を追加しました。
PlayFab統合により、Azureインフラストラクチャ内でヘッドレスサーバーを実行し、ニュースサーバーをオンザフライでスピンし、メインダッシュボードからサーバーからメトリックを取得するオプションが付与されます。
統合に関する詳細は専用ページまたはPlayFab サンプルでご確認ください。
PlayFab VMで直接実行される動作中のヘッドレスサーバーと、ゲームサーバーに接続できるクライアントを構築する方法を説明します。
Source Control Systemsの対応
Photon Boltには、PerforceやVersionControl.Provider APIを使用してファイルを同期する他のツールなど、Unity Editorと統合されたソース管理システムへのサポートが含まれています。
デフォルトでは、対応が無効に設定されているので、通常のBoltの使用には盛況しません。使用する場合は、Miscellaneous
セクションのBolt Settings
ウィンドウのEnable Source Provider Integration
チェックボックスから有効にできます。
ゲームサーバーのパブリックバインディングエンドポイント強制
Photon Boltには、SDKを実行しているピアのパブリックIPとPORTを検出できる組み込みの手順があり、STUNプロトコルを使用します。
これは、ゲームサーバーとクライアント間のパンチスルーを実現し、直接接続を作成するために必要です。
この手順は、ほとんどのネットワークシナリオで正常に機能し、プレイヤー間の遅延を小さくします。
ゲームサーバーが非常に制約されたネットワーク構成で実行されているため、この動作は必ず動作するとは限りません。これは、一部のホスティングサービスプロバイダー、企業インフラストラクチャ、大学などの場合です。
これらの場合、Boltにはローカルピアのパブリックエンドポイントを強制するオプションがあります。
この設定は、ゲームサーバーの起動時にこの情報を取得できる場合、または現在のサーバーに対して固定されている場合にのみ役立ちます。
Photon BoltにパブリックIP:PORT構成として使用するエンドポイントを通知する方法を示します。
エンドポイント情報は、パンチ手順を試行するためにこのサーバーに接続しようとするクライアントに送信されます。
C#
public class Menu : Bolt.GlobalEventListener
{
private void Awake()
{
BoltLauncher.SetUdpPlatform(new PhotonPlatform(new PhotonPlatformConfig()
{
ForceExternalEndPoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 1234)
}));
}
}
新しいスレッドプールマネージャー
メモリ割り当てと消費電力を改善するために、SDK内のスレッドの作成と管理を担当する新しいスレッドプールマネージャーが作成されました。
スレッドのオンデマンドの初期化、リサイクル、破壊を保証します。
これは主に、モバイルターゲットやNintendo Switch(スレッドの使用が制限されている)などのコンソールのような一部の制限されたプラットフォームで役立ちます。
スレッドプールは、SDKが使用するすべてのスレッドを制御します。これらのスレッドは、ネットワーク更新の実行とバックグラウンド接続の維持に重点を置いています。