Unite 2017 干货整理 同步篇

  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.同一频率转发数据和操作

两种同步模式比较1 两种同步模式比较2

kisence

潮落江平未有风。