UE4 引擎内置的网络同步方案被称为 Replication(也叫 UNet),其核心原理与名称所表达的含义一致——即在多个端之间复制状态。
底层通信协议采用 TCP 与 UDP 混合的方式实现,其中 UDP 部分加入了自定义的可靠性机制。
Replication 的同步模型总结为两类:状态同步与 RPC(远程过程调用)。
同步的基本单位是 Actor。引擎提供了便捷的变量同步机制和函数调用(RPC)支持,部分内置 Component 也扩展了网络同步能力,例如 MovementComponent,这使得开发网络游戏的门槛大幅降低。
UE4 的服务端进程称为 Dedicated Server(DS),对应 Unity 中的 batchmode 模式。
在上述基本网络同步机制之外,UE4 针对角色移动单独实现了一套专用方案。