关于更新我的node.js游戏的问题

我正在做一个小游戏,为服务器使用node.js,为客户端使用embedded在HTML5canvas中的.js文件。 玩家可以用箭头键移动。

现在我已经提出了两种更新游戏的方法,一种是每次改变玩家的新位置。 它的工作,但我的服务器必须处理大约每秒60对(客户端的更新速度是30 /秒,有2名球员不停地移动)。 第二种方法是在改变方向速度时只发送玩家对象的新位置和速度/方向,所以基本上在其他客户端上使用来自上次更新的方向/速度对玩家的移动进行插值。 我的服务器只需要处理很less的x / y7speed / direction数据包,但是当数据包到达时,我的客户端经历了一些延迟,因为插入的位置通常与数据包中写入的实际位置相距一点点。

现在我的问题是:你会推荐哪种方法? 而我应该如何为两种方法做出滞后赔偿?

如果延迟较低,则从对象绘制新位置的位置进行插值。 在低延迟情况下,这并没有太大区别。

如果你有很高的延迟,你可以实现一种EPIC。 http://www.mindcontrol.org/~hplus/epic/

你也可以在Browser-Quest中查看它是如何完成的。 https://github.com/mozilla/BrowserQuest

祝你好运!