Skip to main content

方法/属性篇

本篇章将会罗列常用的和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 “回环”目标。只有发送方玩家会收到该事件。这样可以绕过所有速率限制,因为数据实际上不会通过网络传输。