方法/属性篇
本篇章将会罗列常用的和NetWorking有关的方法和属性。
NetWorking 属性
IsClogging:下一个网络帧发送的数据量是否已超过阈值/是否已经触发数据切片。
IsInstanceOwner:实例创建者/所有者,在实例由社团为核心创建时返回为Null。如果需要访问实际的所有者,请使用IsMaster。
IsMaster:该实例所有脚本的默认所有者。
IsNetworkSettled:数据已经准备发送但是还未发送。
LocalPlayer:返回本地玩家的VRCPlayerAPI对象 ——注意:生成本地玩家需要经过反射,属于高延时函数,频繁使用时请主动缓存。
SimulationTime:该物体最后一次更新的时间,与目前时间相减得到延迟。
NetWorking常用方法
Networking.IsOwner(gameObject)
Networking.SetOwner(VRCPlayerAPI, gameObject);
网络事件发送方法:
SendCustomNetworkEvent() :该方法仅限于普通网络事件
NetworkCalling.SendCustomNetworkEvent():该方法可触发普通网络事件和带参网络事件,推荐使用。
网络事件-接收对象
| 目标 | 描述 |
|---|---|
NetworkEventTarget.All |
该实例中的所有玩家都会收到该事件。 |
NetworkEventTarget.Others |
本实例中的所有玩家都会收到该事件,本地玩家除外。 |
NetworkEventTarget.Owner |
该对象的所有者接收该事件。 |
NetworkEventTarget.Self |
“回环”目标。只有发送方玩家会收到该事件。这样可以绕过所有速率限制,因为数据实际上不会通过网络传输。 |