「Unity/photon/fusion/位置回転同期」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→位置補完の遅延) |
(→パケット間隔) |
||
(同じ利用者による、間の10版が非表示) | |||
行1: | 行1: | ||
==位置回転同期周り== | ==位置回転同期周り== | ||
NetworkTransform で制御する | NetworkTransform で制御する | ||
+ | |||
+ | NetworkTransform は、Prefabから生成された、インスタンスオブジェクト自体を共有するものではなく、Prefabは、ローカルのものを使うっぽい。 | ||
==補完を使わず瞬間移動== | ==補完を使わず瞬間移動== | ||
行12: | 行14: | ||
* 上限の0.2に、すると、0.2秒ぐらい遅れて表示される | * 上限の0.2に、すると、0.2秒ぐらい遅れて表示される | ||
* 下限の0に、設定しても、多少遅れてるような気がする(多分ネットワーク送受信分が遅れる) | * 下限の0に、設定しても、多少遅れてるような気がする(多分ネットワーク送受信分が遅れる) | ||
+ | |||
+ | ==FixedUpdateNetworkのフレームレート== | ||
+ | * Photon/Fusion/Resources/NetworkProjectConfig アセットの Config/Simulation/TickRateで、設定できる。デフォルトは60。 | ||
+ | * TickRateを、60と設定すると、FixedUpdateNetwork()が、1秒間に60回実行される。 | ||
+ | * TickRateの値を、小さく(60から10に)すると、プレイヤーの動きが速くなる。プレイヤーの速度(Runner.DeltaTime * PlayerSpeed)などを、その分小さくして帳尻を合わせれば良い。 | ||
+ | |||
+ | 参考:https://doc.photonengine.com/ja-jp/fusion/current/manual/network-object/fixed-update-network | ||
+ | |||
+ | ==パケット間隔== | ||
+ | Photon/Fusion/Resources/NetworkProjectConfigの | ||
+ | 以下値を大きくすると、レイテンシーが増加し、状態同期の精度が低下しますが、データ使用量は減少します。 | ||
+ | * ClientPacketInterval:クライアント側パケット間隔 | ||
+ | * ServerPacketInterval:サーバー側パケット間隔 | ||
+ | |||
+ | 参考:https://doc-api.photonengine.com/en/fusion/current/class_fusion_1_1_simulation_config.html |
2023年11月7日 (火) 15:31時点における最新版
位置回転同期周り
NetworkTransform で制御する
NetworkTransform は、Prefabから生成された、インスタンスオブジェクト自体を共有するものではなく、Prefabは、ローカルのものを使うっぽい。
補完を使わず瞬間移動
TeleportToPosition を使う
参考:https://zenn.dev/photon_japan/articles/0ff7a5b9171666
位置補完の遅延
TargetInterpolationDelay にデフォルトで0.03秒が、入ってる。
- 上限の0.2に、すると、0.2秒ぐらい遅れて表示される
- 下限の0に、設定しても、多少遅れてるような気がする(多分ネットワーク送受信分が遅れる)
FixedUpdateNetworkのフレームレート
- Photon/Fusion/Resources/NetworkProjectConfig アセットの Config/Simulation/TickRateで、設定できる。デフォルトは60。
- TickRateを、60と設定すると、FixedUpdateNetwork()が、1秒間に60回実行される。
- TickRateの値を、小さく(60から10に)すると、プレイヤーの動きが速くなる。プレイヤーの速度(Runner.DeltaTime * PlayerSpeed)などを、その分小さくして帳尻を合わせれば良い。
参考:https://doc.photonengine.com/ja-jp/fusion/current/manual/network-object/fixed-update-network
パケット間隔
Photon/Fusion/Resources/NetworkProjectConfigの 以下値を大きくすると、レイテンシーが増加し、状態同期の精度が低下しますが、データ使用量は減少します。
- ClientPacketInterval:クライアント側パケット間隔
- ServerPacketInterval:サーバー側パケット間隔
参考:https://doc-api.photonengine.com/en/fusion/current/class_fusion_1_1_simulation_config.html