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

我正在为服务器使用node.js,为客户端制作嵌入HTML5画布中的.js文件。 每个球员都有和他们可以用箭头键移动的物体。

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

现在我的问题是:你会推荐哪种方法? 我应该如何对两种方法进行滞后补偿?


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

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

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

祝你好运!

链接地址: http://www.djcxy.com/p/10667.html

上一篇: Questions about updating my node.js game

下一篇: SignalR and load balancing