博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UE4 ReplicationGraph系统介绍
阅读量:1874 次
发布时间:2019-04-26

本文共 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时的每个数据包

 

 

 

 

 

 

 

 

 

 

 

 

转载地址:http://yzubf.baihongyu.com/

你可能感兴趣的文章
使用 STM32 通用 Bootloader ,让 OTA 更加 Easy
查看>>
Cache 的基本概念与工作原理
查看>>
装机量超亿台 RISC-V +IoT OS!中科蓝讯与RT-Thread战略合作,共推自主物联网生态发展
查看>>
Android程序员必备!面试一路绿灯Offer拿到手软,Android面试题及解析
查看>>
Android程序员的春天!12个View绘制流程高频面试题,分享PDF高清版
查看>>
深入交流安卓!新鲜出炉的Android面试真题集锦我给你们整理出来了!Android面试题及解析
查看>>
深入浅出Android开发!你会的还只有初级工程师的技术吗?一线互联网公司面经总结
查看>>
深度剖析原理!超全Android中高级面试复习大纲,含BATJM大厂
查看>>
温故而知新!Android开发者该学习哪些东西提高竞争力?成功入职阿里
查看>>
火爆知乎的Android面试题-Android-App的设计架构经验谈,大厂内部资料
查看>>
看完直接怼产品经理!Android多进程从头讲到尾,跳槽薪资翻倍
查看>>
快速从入门到精通!面试的时候突然遇到答不上的问题怎么办?已拿到offer
查看>>
Android开发知识体系!腾讯+字节+阿里面经真题汇总,成功入职阿里
查看>>
android开发语言!大厂经典高频面试题体系化集合,移动架构师成长路线
查看>>
typescript学习(进阶)
查看>>
三天敲一个前后端分离的员工管理系统
查看>>
axios请求携带cookie实现跨域(后端springsecurity)
查看>>
Uncaught (in promise) TypeError: $data.tableData.filter is not a function
查看>>
spring data rest 不隐藏主键id
查看>>
后端传来json数据,vue前端如何渲染??
查看>>