ue4联网和远程过程调用(RPC)总结 (第三部分)

1.7 远程过程调用(RPC)

远程过程调用也称为复制函数。可在任何机器上进行调用,但会指示其的实现在与网络会话连接的特定机器上发生。有三种RPC:

ue4联网和远程过程调用(RPC)总结 (第三部分)_第1张图片

细节面板(Details Panel) 中的 复制(Replicates) 下拉菜单设为三种可用类型之一,
可为蓝图中的事件和函数指定相同的命名。

ue4联网和远程过程调用(RPC)总结 (第三部分)_第2张图片
1.7.1 可靠性
必须将RPC指定为 可靠 或 不可靠。在蓝图中,函数和事件默认为不可靠。要将函数指定为可靠,
将细节面板(Details Panel)中的 可靠(Reliable) 设置设为 true。
在C++中,必须将 Reliable 或 Unreliable 说明符作为 Server、Client 或 Net Multicast 函数,添加到RPC的 UFUNCTION 宏及其状态。
不可靠RPC无法保证必会到达预定目的地,但
其发送速度和频率高于可靠的RPC。其最适用于对gameplay而言不重要或经常调用的函数。

例如,由于Actor移动每帧都可能变换,因此使用不可靠RPC复制该Actor移动。
可靠的RPC保证到达预定目的地,并在成功接收之前一直保留在队列中。其最适合用于对gameplay很关键或者不经常调用的函数。相关例子包括碰撞事件、武器发射的开始或结束,或生成Actor。

滥用可靠函数可能导致其队列溢出,此操作将强制断开连接。若逐帧调用复制函数,应将其设为不可靠。若拥有与玩家输入绑定的可靠函数,应限制玩家调用该函数的频率。

1.8 基本复制Actor清单

按照以下步骤,可创建复制Actor:
ue4联网和远程过程调用(RPC)总结 (第三部分)_第3张图片
1.9.1 网络提示
ue4联网和远程过程调用(RPC)总结 (第三部分)_第4张图片

你可能感兴趣的:(ue4,rpc,vr,unreal,网络)