本文共 1063 字,大约阅读时间需要 3 分钟。
系统框架图
ReplicationGraph是基于TCP和UDP混合的方式实现的。
-
TCP用于建立Instance间的握手或者连接
-
UDP用于Replication同步对象
Actor Replication
基础介绍
-
基于UE4的Actor/UProperty/UFunction为单位进行同步
-
大部分相关的设置可以直接在Editor中直接设置
-
UE4本身已经提供了一些优化的选项,另外也保留了一些可以自定义优化行为的方式
-
对于Character Movement做相关特殊处理
可设置选项
NetWorkRole
-
ROLE_SimulatedProxy
-
ROLE_AutonomousProxy
-
ROLE_Authority
Relevancy
-
Only Relevant to Owner,Always Relevant
-
Net User Owner Relevancy
-
Net CullDistance
Priority
-
Net Priority
-
Net Update Frequency
-
Min Frequency
基础流程图
UReplicationGraphNode
按照空间划分
-
每个网格代表一个区域
-
Actors根据位置信息静态/动态的添加/删除到网格
按照同步频率划分
-
该节点的Actors总是每帧同步
-
该节点的Actors需要进行帧间隔的筛选再同步
按照同步对象划分
-
同步给所有客户端
-
同步给单个或者多个客户端
UReplicationGraph
-
管理所有的connection
-
管理所有的UReplicationGraphNode
-
负责定义Actor到不同Node之间的路由规则(EClassRepPolicy)
-
负责将不同的Actor 动态/静态的路由到不同的Node(全局/Spatial/PerConnection)
-
为了进一步缩减Actor筛选的开销,为Actor添加Dependency关系
-
ServerReplicateActor为同步的主入口,负责每帧的Actor同步
Network Profiler
-
方便查看网络相关的统计数据
-
可以检索所有通过网络同步的属性和RPC
-
可以在游戏中运行时动态打开和关闭
Network Insights
-
Network Insights是Unreal Insights的一部分
-
可以工作在PC和移动平台
-
可以直接对本机或者远程机器进行Profiling
-
可以以Runtime实时监控或者生成Log的方式工作
-
可以监控Replication时的每个数据包
转载地址:https://blog.csdn.net/zzZZ20150101/article/details/117734436 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!