当前位置: 首页 > news >正文

增加网站外链网站建设要素

增加网站外链,网站建设要素,石家庄抖音代运营公司,企业网站建站源码前言多图, 不想在源代码写注释, 不想贴代码块, 看的不清楚版本4.21混4.22, 区别不大文章属于旧有文章搬运, 之前在csdn上面2019.10.27修改一版物体位置信息同步, 或者说物体的移动同步, 是一个很大的坑, 从个人目前魔改UE4位置同步后, 感觉至少要考虑以下几点位置信息的数据结构…前言多图, 不想在源代码写注释, 不想贴代码块, 看的不清楚版本4.21混4.22, 区别不大文章属于旧有文章搬运, 之前在csdn上面2019.10.27修改一版物体位置信息同步, 或者说物体的移动同步, 是一个很大的坑, 从个人目前魔改UE4位置同步后, 感觉至少要考虑以下几点位置信息的数据结构要减少单次网络同步时的传输数据大小, 但也要包含所需要的完整的位置信息.同时在降低精度的情况下减少一些数据的大小, 例如降低Location和Rotation的精度, 用更少的位数传播位置信息的同步触发时间, 生成时间指控制什么时候位置进行网络同步, 什么时候不需要同步. 以及什么时候生成需要同步的位置信息位置信息的权威端以哪一端或者哪里的物体位置, 当做最新位置同步, 作为权威端如果权威端只在服务器, 那很简单.如果权威端只在单一客户端, 服务器做验证处理, 此时逻辑也比较简单, 客户端发送位置到服务器, 服务器直接应用(不考虑防作弊, 防作弊的话此时权威端还是服务器, 实现会很复杂和麻烦)如果权威端在多个客户端和服务器之间切换, 嗯, 坑很深....接受到位置信息之后的处理, 减少网络传输的延迟频率丢失的一些位置信息带来的影响, 使得整个物体移动平滑, 例如游戏中的角色运动同步这里面学问很深, 自行百度谷歌(找不到当初看学习的文章了)判断位置同步信息是否有意义, 丢弃掉无用的位置信息对旧的信息不做处理, 主要是解决网络的丢包, 延迟等带来的问题对不是权威端的信息不做处理, 解决一些事件调用先后顺序有别, 状态同步不及时等等的时序问题UE4 的位置同步是一个比较常用的功能, 实现也比较简单, 只是服务器当方向向客户端同步物体的位置信息.下文将深扒一下位置同步的代码实现, 以及对一些有坑的地方进行描述.关键函数和结构体信息/** Returns the properties used for network replication */ virtual void AActor::GetLifetimeReplicatedProps( TArray FLifetimeProperty OutLifetimeProps ) const// 在属性同步前调用的一个函数, 这里生成需要同步的位置信息, 并重写是否需要位置同步 /*** Called on the actor right before replication occurs. * Only called on Server, and for autonomous proxies if recording a Client Replay.*/ virtual void AActor::PreReplication( IRepChangedPropertyTracker ChangedPropertyTracker )// 生成物体同步信息的函数 /** Fills ReplicatedMovement property */ virtual void GatherCurrentMovement();// 位置同步的结构体信息 /** Used for replication of our RootComponents position and velocity */ UPROPERTY(EditDefaultsOnly, ReplicatedUsingOnRep_ReplicatedMovement, CategoryReplication, AdvancedDisplay) struct FRepMovement ReplicatedMovement;// Attach相关的结构体信息 /*** Used for replicating attachment of this actors RootComponent to another actor.* This is filled in via GatherCurrentMovement() when the RootComponent has an AttachParent.*/ UPROPERTY(Transient, ReplicatedUsingOnRep_AttachmentReplication) struct FRepAttachment AttachmentReplication; 同步属性相关从最开始的地方说起, UE4中物体位置同步是靠Actor本身属性同步实现的, 如下: bReplicateMovement 控制是否进行同步AttachmentReplication 同步Attach相关, 是一个FRepAttachment, 即Relative Position(相对位置)可以看到这个结构体里面是一个相对位置的同步信息ReplicatedMovement 同步位置信息, 绝对位置同步基础的位置信息, 会同步物理状态LocationQuantizationLevel, VelocityQuantizationLevel, RotationQuantizationLevel三个值是精度, 可以控制Vector和Rotator用多少位传输控制属性同步及生成位置信息在属性同步前, 需要生成位置同步信息, 并修改同步条件ReplicatedMovement同步条件 bReplicateMovement为TrueAttachmentReplication同步条件 根组件存在并且根组件不同步然后我们看一下GatherCurrentMovement函数该函数在每次属性同步前都会被调用, 以生成相应的位置信息. bReplicateMovement 生成 ReplicatedMovementRootComponent-GetAttachParent() 生成 AttachmentReplication判断是否开启物理, 物理的同步和没有物理的同步方式不一样开启物理时会同步位置旋转速度和是否休眠同时注意在Welded时, 不会进行物理同步(没有接触过) 没有开启物理的情况下如果有父组件, 相对位置, 生成AttachementReplication如果无, 绝对位置, 生成ReplicatedMovement/*** 因为工作项目对物体同步相关进行过魔改* 有时候会碰到服务器和客户端物体缩放不同步, 不确定是魔改后的问题还是UE4的问题* 这个问题未深入研究, 是否存在? 发生条件等都不明确* 可能什么时候深扒Actor的生成和初始化同步会明白些 */ 同步后的处理这个时候的处理就比较简单了, 在这两个函数中将这些信息设置到本地就行了OnRep_ReplicatedMovement有兴趣的自己扒吧OnRep_AttachmentReplication判断AttachParent是否存在是Attach还是DetachDetach就很简单了, 直接调用DetachFromActor然后判断是否同步位置, 如果同步, 则调用用OnRep_ReplicatedMovement, 应用绝对位置有坑见下文一个的问题注意一下这段长长的注释, 绝对是4.21版本修复的.Attach相关的相对同步, 会造成上面说的那个问题这个问题会导致什么呢?Detach相关的函数同步处理时, 会调用OnRep_ReplicateMovement函数但由于没有开启bReplicateMovement, ReplicatedMovement属性为空, 是无效值但由于数据不存在, 会让Actor位置, 旋转归零.所以, 如果版本较低的请注意了4.19前绝对有这个bug, 那时候魔改物体同步时, 踩过这个坑4.20 应该也没有, 工作用的20, 最近再次碰到过这个坑 但自己电脑上只装了15和21(其他的都卸载了), 没有办法(懒)验证了4.21版本才修复4.21版本才修复4.21版本才修复结语能用UE4最新的版本就有最新的版本, 虽然会踩很多新坑, 但比踩那些已知bug待修复的坑好的多2019.10.27, 有时候踩坑踩着, 最后查到官方, 一句已知bug, 某某版本修复.... 很无语...UE4同步相关的处理做好, 这里位置同步的是实现感觉很简单了骗赞了, 骗评论了, 不要再一次单机啊.2019.10.27, 看到这个单机.... 嗯, 没有单机了....
http://www.pierceye.com/news/335139/

相关文章:

  • 那个网站做外贸canvas做的网站
  • 学做视频的网站wordpress上传大附件
  • 怎么做网站卖产品黄埭网站建设
  • 娱乐网站 建站软件学校网站建设栏目
  • 做调研有哪些网站网站建设策划书
  • 旺道网站排名优化建设网站需要做的工作
  • 设计公司网站 唐山本地备份wordpress
  • 淘宝客网站建设多少钱app网站开发案例
  • vs2008不能新建网站个性手绘个人网站模板下载
  • 西安好的网站建设公司西安高端网站制作公司哪家好
  • 网站分享按钮网站运营建站优化专家
  • 网站微信建设运维经验分享用cms创建自己带数据库的网站和在本机搭建网站运行平台的心得体会
  • wordpress建站吧做网站接专线费用
  • c 做网站设计广东seo点击排名软件哪里好
  • 微网站微网站seo服务理念
  • 建设网站招聘商标注册查询官网网站
  • 建设彩票网站合法吗新浪sae 搭建wordpress
  • 加热器网站怎么做的课程网站建设规划方案
  • 网站建设目标文档鄂州网站制作哪家好
  • 廉政建设网站微信运营
  • 什么样的网站结构适合做seo北京互联网建站网站
  • 工程科技 网站设计广东做seo的公司
  • 外贸都是在哪些网站做怎么做个手机版的网站
  • 北京社保网站做社保增减员锦绣大地seo官网
  • 分析影响网站排名的因素河南省住房和城乡建设厅网站文件
  • 宁城网站建设公司引流最好的推广方法
  • 辽宁省建设厅官方网站网站免费正能量直接进入浏览器下载安装
  • 怎么给公司建网站广州互联网营销师培训
  • 用阿里云做网站注意事项绵阳的网站建设公司哪家好
  • 电商网站设计工作内容深圳国际设计学院