Unity學習——Network Transform和 Network Transform Child組件


Network Transfrom

Network Transform組件同步網絡上的 GameObjects的移動和旋轉。注意 Network Transform組件只能同步生成的聯網 GameObjects。

屬性 功能
Network Sent Rate(seconds) 設置網絡每秒更新的數量。你可以設置為0,這樣 GameObject在被創建后就不再會更新,就像玩家產生的無交互效果一樣。比如說:玩家無法與身后的煙霧互動。
Transform Sync Mode 發生在 此GameObject上的同步類型。
-- Sync None 無同步
-- Sync Transform 使用 GameObject的 Transform來同步。使用場景:物理系統不控制此 GameObject。默認是此模式。
-- Sync Rigidbody 2D 使用 Rigidbody2D組件來同步。使用場景: 2D物理系統控制此 GameObject。
-- Sync Rigidbody 3D 使用 Rigidbody組件來同步。使用場景:3D物理系統控制此 GameObject。
-- Sync Character Controller 使用 Character Controller組件來同步。使用場景:你在使用 Character Controller。
Movement:
Movement Threshold 設置 GameObject在沒有發送移動同步更新時 能夠移動的距離。
Snap Threshold 在某個地方設置一個閾值,如果一個移動更新將 GameObject放置到比當前位置更遠的地方,那么 GameObject會快速移動到此位置而不是平滑移動。
Interpolate Movement Factor 使用它來啟動和控制同步移動的插入。數字越大,GameObject插入到目標位置的速度就越快。如果設置為0,GameObject會直接到新的位置。
Rotation:
Rotation Axis 定義那個旋轉軸應該同步。默認是 XYZ (full 3D)。
Interpolate Rotation Factor 使用它來啟動和控制同步旋轉的插入。數字越大,GameObject插入到目標旋轉的速度就越快。設置為0,GameObject會直接到新的旋轉。
Compress Rotation 如果你壓縮旋轉數據,則發送的數據量會更少,旋轉同步的精度也會更低。
-- None 無壓縮(默認)。
-- Low 將少量壓縮應用於旋轉同步。它能減少旋轉數據的發送信息量。
-- High 將高壓縮量應用於旋轉同步。這個選項發送最少旋轉數據的信息量。
-- Sync Angular Velocity 選中它來同步附加 Rigidbody組件的角速度。

這個組件考慮了權限,因此本地玩家 GameObject(有本地權限)能將它們的位置從 client同步server上。然后再同步到其他 clients。其他 GameObjects(有server權限的)從 server同步位置到 clietns。
一個有 Network Transform組件的 GameObject必須也有 Network Identity組件。當你為 GameObject添加 Network Transform組件時,如果此 GameObect沒有 Network Identity組件的話,它也會自動創建。
注:Network Transform Visualizer組件可用於調試 Network Transform組件。

Network Transform Child

Network Transform Child組件同步 有 Network Transform組件的 GameObject的 子GameObject 的位置和旋轉。在需要同步一個 聯網GameObject的獨立移動的子對象時,可以使用此組件。
要使用 Network Transform,把它關聯到同一個 parent GameObject下,作為 Network Transform,並使用 Target域來定義哪個 子GameObject要應用此組件設計。你也可以有多個 Network Transform Child組件。

屬性 功能
Network Send Rate (seconds) 設置每秒網絡更新的數量。設置為0時,GameObject在被創建后不會再更新,就像玩家產生的無交互效果。
Target 要同步的 子 transform。(注意,此組件在 parent上,而不是 child - 因此你可以使用這個域來指定 child。
Movement Threshold 設置 GameObject在不發送移動同步更新時可以移動的距離。
Interpolate Movement Factor 同 Network Transform
Interpolate Rotation Factor 同 Network Transform
Rotation Axis 同 Network Transform
Compress Rotation 同 Network Transform
-- None 同 Network Transform
-- Low 同 Network Transform
-- High 同 Network Transform

這個組件不使用物理;它同步 子GameObject的位置和旋轉,並向更新值插入。使用 Interpolate Movement Factor和 Interpolate Rotation Rotation Factor來自定義插入的速率。
有 Network Transform Child組件的 GameObject必須也有 Network Identity組件。當你為 GameObject添加 Network Transform Child組件時,如果此 GameObect沒有 Network Identity組件的話,它也會自動創建。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM