街机模拟器联机模块,同步算法求指导

完全的精确同时间播放画面帧是不现实的 接受端只要保证每一个游戏周期(比如你说的5帧)时候位置和事件同步一次就行了 不用每一帧都一模一样 接受端根据主机的周期速度 调整自己每一帧的步长加快或者变慢 最后每个周期节点时候一致就行了手机打字说不太具体,推荐文章:
游戏编程精粹3 5.1 将实时策略游戏中的延迟最小化
【街机模拟器联机模块,同步算法求指导】 5.2 实时策略网络协议
游戏编程精粹4
6.6多服务器网络游戏时间和同步管理
希望里面介绍的方法对你有帮助

■网友
kaillera是采用udp作为数据同步的协议,可以在网络协议这部分再进行优化,可以采用一些开源的udp库如kcp或udt这类进行加速转发。当然也可以自己设计一个专用的网络库,提供一个思路,kaillera的数据包一般都不大,可以基于udp设计一个冗余发包,即时应答的协议,尽量避免重发。


    推荐阅读