我可以使用Lance制作多人Phaser游戏吗?

问题描述 投票:4回答:1

如何使用现有的Phaser游戏并使其成为多人游戏?

我可以将Lance库用于此目的吗? 两个库都控制着自己的游戏对象,所以我不知道如何在同一个游戏中一起使用这两个框架。

multiplayer phaser-framework lance
1个回答
10
投票

免责声明:我是Lance的共同创作者之一

不幸的是,Phaser的2. *架构使得很难与Lance配对制作Realtime Javascript多人游戏。

问题在于Phaser做出了很多假设,这些假设并不适用于多人游戏设置。 例如,渲染和游戏循环绑在一起。 服务器显然不需要渲染任何东西。

Phaser还假设存在DOM和window对象,这些对象在服务器上也不存在。 此外,所有包含世界游戏状态对象,精灵等的数据结构都保存在扩展实例PIXI对象上,这些对象在服务器上下文中没有意义。 这些限制和紧耦合与Lance的模块化方法不兼容。

使用模拟DOM和Canvas的库(如JSDOMNode Canvas )完全可以在服务器上运行Phaser,但它确实意味着通过在服务器上运行PIXI会显着降低性能,并且您仍然存在同步PIXI数据的问题要与之抗衡的结构。

好消息是, Phaser 3.0是一个持续的,完全重写的Phaser 2.0,采用更加模块化的方法,希望能够更轻松地与Lance集成。 我们计划在不久的将来使这种集成变得更容易。

© www.soinside.com 2019 - 2024. All rights reserved.