node.js - Node.js 客户端-服务器游戏,服务器应该运行循环吗?
问题描述
我得到了我的第一个 node.js 演示,它允许多个人在同一个 html 画布上控制一个角色。左上角出现一个角色,您可以使用箭头键四处走动。
由于我只是将输入发送到服务器,然后将其转发给所有客户端而不做任何其他事情,我最终意识到客户端很容易不同步。
我做了很多关于同步网络游戏的阅读,但有些东西让我有点困惑。据我了解,游戏应该在服务器上运行,并且应该向游戏状态的客户端发送“快照”。
我在这里感到困惑的是服务器方面。就在画布上绘制所有内容而言,服务器是否应该运行实际游戏?还是只做除了绘图之外的所有事情,只运行更新,然后每 X 毫秒发出游戏状态?
在我的客户端,我使用 requestAnimationFrame 进行循环。如果情况是服务器只是运行一个带有游戏逻辑的循环,我是否只是尝试将 requestAnimationFrame 与服务器上的 setInterval 匹配?这是真正让我失望的部分。我应该如何在服务器上创建游戏循环?
感谢您花时间看这个
解决方案
推荐阅读
- php - 在模板页面上显示某些帖子格式返回 NULL
- linux - 防止蓝牙驱动程序操作?
- design-patterns - UnitOfWork 模式应该如何实际处理
- ios - 无限导航堆栈
- hive - Hive 视图不反映基表更改
- vb.net - 将应用程序从 SSL 升级到 TLS1.2 需要更改应用程序服务器中的代码以及更改数据库服务器吗?
- vbscript - VBS InputBox,无文件扩展名的输出
- c# - Debug -> 在 Visual Studio 中启动外部程序有什么用
- javascript - 如何使用 jquery 数据表加载本地 JSON 变量
- google-cloud-platform - 如何获取 Cloud Build 的最新更新?