LibGDX - бегун HTML5, с сетью? - PullRequest
       14

LibGDX - бегун HTML5, с сетью?

0 голосов
/ 03 сентября 2018

У меня есть 2D-игра, которую я создал с помощью LibGDX Engine . Игра создана для рабочего стола.

Также разработан сервер для игры.

Я использую сетевую библиотеку Netty.io для связи между сервером и клиентом.

Все работает нормально, но я хочу позволить пользователям, у которых не установлена ​​Java, играть, и решение, которое я нашел, это использовать бегун HTML5, который предлагает LibGDX.

Но если я преобразую его в HTML5, мне придется заново выполнить сетевую часть для клиента HTML5 с веб-сокетами и добавить поддержку подключения к веб-сокету на сервере, это правильно?

Есть ли другое решение для этого?

1 Ответ

0 голосов
/ 07 сентября 2018

На веб-сайте Netty.io, на который вы ссылались, я вижу поддержку Websockets, но нет реализации JS. Поэтому ответ зависит от того, доступна ли реализация JS для Netty.io (например, у Socket.io есть клиенты для Java и JS).

Если у Netty есть реализации как для Java, так и для JS, вам нужно извлечь все методы, которые вы используете, в интерфейс, который вы вызываете в своем основном проекте. Реализации интерфейса для проектов Android и Desktop будут теми реализациями Java, которые вы используете в настоящее время, в то время как для бэкэнда GWT вы будете использовать вызовы JSNI для реализаций JS.

Например, вы можете увидеть мой проект Github для использования игровых сервисов: реализации Google Play Games доступны для HTML, Desktop и Android, все реализованы с использованием одного и того же интерфейса, а реализация HTML использует вызовы JSNI для Google JS lib: https://github.com/MrStahlfelge/gdx-gamesvcs/blob/master/html-gpgs/src/de/golfgl/gdxgamesvcs/GpgsClient.java

Если JS-реализация для Netty.io недоступна, вам придется сделать это самостоятельно или перейти на другой сетевой уровень.

...