一个项目: 每个客户端都有一个canvas,上面执行动画,当server传来参数(初始位置以及速度),动画便可以开始。 现在遇到一个问题,就是每个客户端开始执行动画的时间有一点的时间差,但这一点的差距,到动画运行得一两分钟之后便变得很明显。图形的位置非常不一致。 参数这服务器是这样传递的: socket.broadcast.emit('init’, initData); socket.emit('init’, initData); 在客户端,这些data会被放入动画函数。
我不知道,问题是否出在每个客户端接收到信息的时间差? 请问如何减少?
谢谢。
4 回复
这是开发游戏中经常碰到的,网络等因素导致各个客户端动画不一致。网上运动补偿的方法一搜一大堆……云风之前就写过一篇文章:http://blog.codingnow.com/2012/03/dev_note_12.html 。