2

我做了一个游戏node.js并上传了它..它应该是每秒 30 - 60 帧..
现在我测试它并且它运行缓慢..我的意思是在本地网络中它运行得更流畅

服务器不是那么远.. 那么有什么技巧可以让 fps 更好吗?

什么更好xhr-poolingwebsockets什么更快?
游戏设置了这样的 xhr-pooling -

io.set('transports', ['xhr-polling']);

游戏托管在appfog中

如果需要我可以发游戏链接!

4

1 回答 1

4

这里的问题是你想做什么?如果服务器为每一帧向客户端发送消息,那么您所说的基本上是不可能的——互联网上低于 16 毫秒(60 fps)或 33 毫秒(30 fps)的网络延迟是不可能可靠保证的。它可以在本地网络上运行,并且几乎可以肯定可以在本地机器上运行,但不能在互联网上运行。如果您需要从客户端获取信息到服务器并在下一帧返回,那么您的往返延迟需要那么低,包括双方的处理。由于 xhr-polling 和 websockets 都使用 TCP,它会变得更糟,因为一个缓慢/丢失的数据包会暂停它之后的所有内容,直到它最终出现。

您确实需要尽可能地将渲染与服务器分离,以便在浏览器中制作可行的游戏。只是网络不够快。

于 2013-07-29T18:35:11.737 回答