LibGDX - HTML5 跑步者,有网络?

LibGDX - HTML5 runner, with networking?

我有一个使用 LibGDX Engine 创建的 2D 游戏。 该游戏是为桌面创建的。

也为游戏开发了服务器

我使用Netty.io networking library在服务器和客户端之间进行通信。

一切正常,但我想让没有安装 Java 的用户可以玩,我找到的解决方案是使用 LibGDX 提供的 HTML5 运行程序。

但是如果我把它转换成HTML5,我必须用websockets为HTML5客户端重新做网络部分,并在服务器中添加对websocket连接的支持,是对吗?

还有其他解决办法吗?

在您链接的 Netty.io 网站上,我看到支持 Websockets,但没有 JS 实现。所以答案取决于是否有 Netty.io 可用的 JS 实现(比如 Socket.io 有 Java 和 JS 的客户端)。

如果 Netty 同时具有 Java 和 JS 的实现,您必须将您使用的所有方法提取到您在核心项目中调用的接口。 Android 和桌面项目的接口实现将是您当前使用的 Java 实现,而对于 GWT 后端,您将使用 JSNI 调用 JS 实现。

例如,您可以查看我的 Github 使用游戏服务的项目:Google Play 游戏实现可用于 HTML、桌面和 Android,所有实现都针对相同的接口,并且 HTML 实现使用 JSNI 调用 Google 的 JS 库:https://github.com/MrStahlfelge/gdx-gamesvcs/blob/master/html-gpgs/src/de/golfgl/gdxgamesvcs/GpgsClient.java

如果Netty.io没有可用的JS实现,你将不得不自己做或者切换到另一个网络层。