http://www.kisence.com/2017/05/17/unite-2017-gan-huo-zheng-li-tong-bu-pian/

Unite 2017 干货整理 同步篇

2017年05月17日

  Unite 2017的一些演讲做了整理。 

  本篇有帧同步和状态同步两个部分。 

  内容持续整理中。

帧同步

优点

  1.开发效率较高(注:特别是对一些操作细节表现要求较高的游戏) 

  2.能实现更强的打击感 

  3.流量消耗稳定 

  4.原生支持离线战斗 

  5.录像文件较小

缺点

  1.网络要求比较高 

  2.反外挂能力较弱 

  3.断线重连时间很长 

  4.逻辑性能优化较困难

实现要点

  1.逻辑部分去浮点数 

  2.组件做帧同步要求改造 

  3.逻辑与"我"无关 

  4.一致的随机数 

  5.定位不同步的能力 

  6.本地插值平滑与表现分离 

  7.TCP换成了UDP

参考游戏

  1.DOTA 

  2.风暴英雄 

  3.王者荣耀

状态同步

优点

  1.安全性非常高 

  2.对于网络的带宽和抖动有更强的适应能力 

  3.断线重连比较快 

  4.客户端计算量大大降低

缺点

  1.开发效率相对帧同步要差一些(注:特别是对一些操作细节表现要求较高的游戏) 

  2.他比较难做出动作类游戏打击感和精确性 

  3.流量会随着游戏的复杂度逐渐增长,比如角色的多少 

  4.需要额外开发离线战斗功能 

  5.录像文件较大

实现要点

  1.影子跟随算法 

  2.TCP性能尚可 

  3.只发送客户端视野里的数据 

  4.双缓冲列表和分帧添加与删除

参考游戏

  1.DOTA2 

  2.LOL 

  3.守望先锋

Tips

  1.中国有些地方udp连不上 

  2.同一频率转发数据和操

Unite 2017 干货整理 同步篇的更多相关文章

  1. Unite 2017 干货整理 优化篇

    Unite 2017 干货整理 优化篇 2017年05月16日 将Unite 2017的一些演讲做了整理.  本篇有内存,CPU.GC.UI.渲染性能指标.Tips几个小节.  内容持续整理中. 内存 ...

  2. Unite 2017 | 从《闹闹天宫》看MOBA游戏里的网络同步技术

    http://mp.weixin.qq.com/s/0v0EU79Q6rFafrh8ptlmhw 在Unite 2017 Shanghai案例分享专场,来自蓝港互动<闹闹天宫>项目组的主程 ...

  3. Java工程师笔试题整理[校招篇]

    Java工程师笔试题整理[校招篇]     隔着两个月即将开始校招了.你是不是也想借着这个机会崭露头角,拿到某些大厂的offer,赢取白富美.走上人生巅峰?当然如果你还没能打下Java基础,一定要先打 ...

  4. Unite 2017 | 基于Animation Instancing的大规模人群模拟

    在Unite 2017的国内技术专场,Unity技术团队为参会者们带来了Unity引擎功能相关的技术分享.今天这篇文章,将由Unity技术支持工程师金晓宇为大家分享基于Animation Instan ...

  5. C#多线程之线程同步篇3

    在上一篇C#多线程之线程同步篇2中,我们主要学习了AutoResetEvent构造.ManualResetEventSlim构造和CountdownEvent构造,在这一篇中,我们将学习Barrier ...

  6. C#多线程之线程同步篇2

    在上一篇C#多线程之线程同步篇1中,我们主要学习了执行基本的原子操作.使用Mutex构造以及SemaphoreSlim构造,在这一篇中我们主要学习如何使用AutoResetEvent构造.Manual ...

  7. 王者齐聚!Unite 2017 Shanghai 日程讲师全揭晓

    汇聚了来自全球的 Unity开发者.发行商.培训家及爱好者的 Unite 2017 Shanghai 即将于于 5 月 11 日-13日在上海·国际会议中心隆重举行.Unite 大会是由 Unity ...

  8. 【重磅干货整理】机器学习(Machine Learning)与深度学习(Deep Learning)资料汇总

    [重磅干货整理]机器学习(Machine Learning)与深度学习(Deep Learning)资料汇总 .

  9. (转)干货|这篇TensorFlow实例教程文章告诉你GANs为何引爆机器学习?(附源码)

    干货|这篇TensorFlow实例教程文章告诉你GANs为何引爆机器学习?(附源码) 该博客来源自:https://mp.weixin.qq.com/s?__biz=MzA4NzE1NzYyMw==& ...

随机推荐

  1. Machine Learning No.9: Dimensionality reduction

    1. Principal component analysis algorithm data preprocessing 2. choosing the number of principal com ...

  2. Redis 的持久化与过期键

    简介 Redis 是使用非常广泛的 Key-Value 内存数据库.因为数据都存放在内存中,所以存取速度非常快.不过,很多情况下我们需要将 Redis 中的数据保存到硬盘中以便做备份.Redis 提供 ...

  3. C++中输出 位宽和小数点后位数 的控制

    要用到这个头文件: <iomanip> setw(x) : 表示控制输出x的位宽 setprecision(x) :表示 控制输出小数点后 x 位 cout.precision(x): 表 ...

  4. BZOJ 1634 [Usaco2007 Jan]Protecting the Flowers 护花:贪心【局部分析法】

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1634 题意: 约翰留下他的N只奶牛上山采木.可是,当他回来的时候,他看到了一幕惨剧:牛们正 ...

  5. kettle 设置变量

    以下只是本人在使用过程中一些经验,可能有误解不对的地方,希望大家指正. 这个控件可以在job中调用,也可以在transformation中使用.下面将分别说明在两个不同任务中调用时的使用方法和需要注意 ...

  6. android自定义控件(四) View中的方法

    onFinishInflate() 当View中所有的子控件 均被映射成xml后触发 onMeasure(int, int) 确定所有子元素的大小 onLayout(boolean, int, int ...

  7. Money Systems

    链接 分析:来看看背包九讲里面的一段话: 对于一个给定了背包容量.物品费用.物品间相互关系(分组.依赖等) 的背包问题,除了再给定每个物品的价值后求可得到的最大价值外,还可以得 到装满背包或将背包装至 ...

  8. VirtualBox文件系统已满--磁盘扩容

    第1步:为virtualbox虚拟电脑扩容 进入命令行,以Windows系统为例 (特别注意空格和中文) 1.启动CMD命令行,进入VirtualBox的安装目录.如 运行:cmd C:\Users\ ...

  9. struts2的使用知识点

    最开始学习java的时候学习过struts,但是对配置和struts的理解深度不够,现在工作虽然再用,但是自己搭建环境和使用心得始终很零散,所以现在决定重新理一遍,有条理的学习一下struts. 至于 ...

  10. 模拟select选择器

    <form method="post"> <div class="selectly" id="s1"> Select ...