虚幻引擎RPC

结合官方图表解释虚幻引擎RPC

Calling Machine:你在那个机器上调用RPC函数

Owning Connection:你在哪个机器上控制角色

Executing Machine:RPC函数会在哪里执行

Invoking Client:调用函数的那个客户端

Server RPC

Calling Machine Owning Connection Executing Machine
Server Client Server
Server Server Server
Server None Server
Client Invoking Client Server
Client Different Client Dropped
Client Server Dropped
Client None Dropped

第一行解读:

在Server上调用ServerRPC,玩家在Client上控制角色,则会在Server上执行

以此类推...

它的执行一般是在服务器

Client RPC

Calling Machine Owning Connection Executing Machine
Server Owning Client Owning Client
Server Server Server
Server None Server
Client Invoking Client Invoking Client
Client Different Client Invoking Client
Client Server Invoking Client
Client None Invoking Client

它的执行一般是在客户端

Remote RPC

Calling Machine Owning Connection Executing Machine
Server Owning Client Owning Client
Server Server Dropped
Server None Dropped
Client Invoking Client Server
Client Different Client Dropped
Client Server Dropped
Client None Dropped

RemoteRPC

只能在服务器 调用 在玩家控制的客户端 上执行

或者在玩家控制的客户端 调用 在服务器 上执行

注意在服务器上控制的玩家 调用RemoteRPC 会失效

其他情况 也会失效

Net Multicast RPC

Calling Machine Owning Connection Executing Machine
Server Client Server and all Clients the invoking actor is relevant for
Server Server Server and all Clients the invoking actor is relevant for
Server None Server and all Clients the invoking actor is relevant for
Client Invoking Client Invoking Client
Client Different Client Invoking Client
Client Server Invoking Client
Client None Invoking Client

服务器 调用NetMulticastRPC会让所有机器执行

而在客户端 调用NetMulticastRPC只会在调用RPC的那个客户端上执行(变为普通函数)

相关推荐
Python私教13 小时前
Godot图片怎么导入?PNG、压缩、Mipmap与Reimport一次讲清
游戏引擎·godot
寒水馨15 小时前
Linux下载、安装godot-4.7.1-stable(附安装包Godot_v4.7.1-stable_linux.x86_64.zip)
linux·游戏引擎·godot·游戏开发·2d游戏·3d游戏·godot engine
寒水馨17 小时前
macOS下载、安装godot-4.7.1-stable(附安装包Godot_v4.7.1-stable_macos.universal.zip)
macos·3d·游戏引擎·godot·跨平台·游戏开发·2d
gongzhxu2 天前
DumpAny —— 一款支持 HTTP / gRPC / MySQL / Redis 的全能网络调试工具
网络·测试工具·http·rpc
wWYy.2 天前
RPC详解
qt·rpc·php
Sayuanni%32 天前
Spring IOC
java·spring·rpc
电子云与长程纠缠2 天前
UE中使用TGuardValue与TInlineComponentArray数据结构
开发语言·数据结构·学习·ue5·游戏引擎
HH‘HH3 天前
Unity通过OPC UA工业协议连接工业设备实战指南
unity·游戏引擎
Duo1J4 天前
【UE】Slate 编辑器工具开发03 - 节点编辑器 (EdGraph)
ue5·编辑器·游戏引擎·ue4