游戏帧同步 基础概念

目前国内互联网逐渐成熟 如何高效的处理游戏同步是个头疼的问题

如果你是土豪 自然怎么写都可以 成本问题..最节省最理想的方案就是广播数据的方式


通信流程

客户端所指当前对局的房间内玩家

1 客户端收集输入

2 所有客户端发送给服务器并广播信息(间隔20帧 可根据游戏类型和服务器成本调整)

3 客户端收到广播消息后 跳转到流程2


注意 游戏逻辑帧和渲染帧不是一个概念 用于通信的帧是所有客户端收发完成后才算一个帧回合



需要广播的内容(值发生改变或者触发以下事件)
瞬移输入...
移动输入...
技能输入...(包括普通攻击)
状态输入...(增加和删除)
死亡输入...
单位输入...(例如人物的金币 元宝 移动速度...等)
物品输入...(购买 使用 [丢弃 如果存在...])


需要同步效验内容
坐标(效验方式 按格子效验 差距超过1格的直接修正 避免影响技能坐标检测 )
方向(这个可随意同步或不同步 影响不是很大)
冷却(这个可随意同步或不同步 可能出现无限CD)
状态(这个最好效验 因为状态间接影响技能的数值)

你可能感兴趣的:(游戏帧同步 基础概念)