我正在html5 canvas中创建一个简单的游戏。我使用javascript运行它。我希望它是一款多人游戏。但是首先我需要有一个数据库,我可以在该数据库中放置每30毫秒运行一次的对象的x和y位置(这是我的游戏动画的关键帧。)。我需要将其保存在文件或数据库中,以便其他玩家可以看到其他玩家的x和y位置的更新...希望您能理解我的观点...
现在我问我应该使用哪个数据库或文件来进行此数据位置更新。可以快速更新
对于这种情况,如果在本地将位置缓存在内存中,然后定期将其与数据库“同步”,则可能会增加里程数。这将需要解决位置冲突的方法(例如,如果您在客户端JavaScript上预测/拥有的位置偏离了数据库报告的实际位置),但将使您效率更高(例如,以更快的速度进行更新)例如,当玩家离您的玩家越来越近,而玩家离您的玩家越来越远时,频率就会降低)。如果特定的数据库请求超出了帧速率要求,它还可以让您更稳定地为播放器的运动设置动画,而不会造成颠簸。
至于数据库本身,有很多数据库可供选择。但是,如果您不想编写服务器端代码来提供用于与数据库交互的API,那么您可能会对Firebase感兴趣,它可以从客户端JavaScript直接访问(无需创建自己的JavaScript)服务器/ API层位于数据库顶部)。当然,您还可以使用其他任何数据库-Google Cloud Datastore,Google Cloud SQL,MySQL,Cassandra,MongoDB-并以您选择的语言(也可以是JavaScript)编写相应的API服务器层,以提供对基础数据,以及作为有效选项(实际上,如果您已经拥有或计划拥有前端Web服务器,则可能更有意义)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句