同期頻度

Strixのコンポーネントは定期的にメッセージを送ってレプリカを更新することによりアクターを同期します。更新頻度が高くなればアクションがスムーズになりラグも短くなりますが、その代わりネットワーク帯域とサーバー負荷が増加します。多数のゲームでは、デフォルト値のままで良好な結果が得られるはずですが、ゲームのパフォーマンスを最適化するために更新頻度を調整することもできます。

Strix ReplicatorとStrix Movement Synchronizerという2つのコンポーネントには、更新頻度を制御するためのプロパティがあります。

Strix Replicator

Strix ReplicatorコンポーネントにはTicksPerSecondプロパティがあります。これは1秒間にアクターがレプリカを更新する回数です。

TicksPerSecondのデフォルト値は5です。つまり、レプリケーターがレプリカを毎秒5回更新することになります。

TicksPerSecondプロパティは、同じアクターにアタッチされている全てのStrixのコンポーネントに影響します。つまり、Strix Transform SyncとStrix Animation Syncの両コンポーネントによる更新も、このプロパティで指定したものと同じ頻度になります。ただしStrix Movement Synchronizerは例外です。

Strix Movement Synchronizer

Strix Movement Synchronizerコンポーネントは、レプリケーターのTicksPerSecondプロパティを使用せず、アクターの動きに合わせて更新頻度を自動調整します。

Strix Movement Synchronizerの更新頻度は、SyncPeriodMinSyncPeriodMaxという2つのプロパティによって制御します。SyncPeriodMinは更新間の最短時間をミリ秒単位で表します。SyncPeriodMaxは最長時間です。Strix Movement Synchronizerは、更新間の時間が指定された2つの時間の間に収まるように更新頻度を調整します。

SyncPeriodMinのデフォルト値は100ms、SyncPeriodMaxは500msです。つまりStrix Movement Synchronizerは100ms以上500ms以下の時間間隔でレプリカを更新します。

注釈

Strix ReplicatorのTicksPerSecondは「1秒あたりの更新回数」を表し、Strix Movement SynchronizerのSyncPeriodMinSyncPeriodMaxは「更新間の時間」を表しています。ある意味で、両者は逆の関係になっています。つまり、TicksPerSecondの値が大きくなると更新頻度が上がりますが、SyncPeriodMinSyncPeriodMaxの値が大きくなると更新頻度は下がります。

パフォーマンスのチューニングに関しては、パフォーマンスを向上させる方法移動同期のパラメーターを調整する方法をご覧ください。