Network Transform
NetworkTransform
NetworkTransform
は、ネットワークオブジェクトの「位置」と「回転」を同期します。オプションとして、「スケール」や「ゲームオブジェクトの親」を同期することもできます。
使用方法
ネットワークオブジェクトのルートか子要素にNetworkTransform
コンポーネントを追加すると、Transform
の状態の変更が複製されます。
備考: 親子関係の同期は、NetworkObject
のルートのNetworkTransform
コンポーネントにのみ適用できます。
Sync Scale
名前が示すとおり、transform.localScale
値の同期を有効にします。
Sync Parent
有効にすると、transform.parent
が同期されます。
これにはいくつかの注意点があります。
- 親には
NetworkBehaviour
コンポーネントが必須です。親を見つけるためにNetworkBehaviourId
が使用されるためです。 - ネットワークオブジェクトのルートには
NetworkTransform
が必要です。親子関係は、ネットワークオブジェクトの入れ子のみ有効です。単一のネットワークオブジェクトの子要素を再配置することはできません。 - 例えば、プレイヤーの手のように、ネットワークオブジェクトの子要素を親にすることもできます。
AutoAOIOverride
有効にすると、親を持つTransform
は自動的に最上位の親NetworkObject
がAreaOfInterestOverride
に設定され、子オブジェクトが親NetworkObject
と同じPlayer Interest
を持つことが保証されます。例えば、プレイヤーがオブジェクトを掴んでいる場合、オブジェクトを掴んでいるプレイヤーの更新を受け取っているプレイヤーに対してのみ、オブジェクトが更新されます。
SetAreaOfInterestOverride
の詳細は、こちらのドキュメントのNetworkTRSP
セクションをご覧ください。
Teleport()
これを呼び出すと、transform
の位置と回転を指定値に設定して、テレポートイベントを送信します。これによって、Render()
内のティック間の補間が中止され、補間無しで即時のテレポート先への移行が実行されます。