Lance.gg в многопользовательской html5 игре не синхронизируется - PullRequest
0 голосов
/ 17 мая 2018

Я пытаюсь сделать multiplayer game in HTML5.Я нашел lance.gg и поиграл.Я изменил игру понг, как это.

  • удалить весло (только мяч оставлен)
  • установить гравитацию на (0, 0.1)
  • установить Ball.velocity.y = -3 каждый раз при вводе с клавиатурыпробел

И вот результат https://youtu.be/MmQOqR71Df0. Как видите, он не синхронизируется по окну.Как я могу заставить его плавно перемещаться между многими игроками?

1 Ответ

0 голосов
/ 17 мая 2018

Класс Ball.js определяет следующий метод получения:

get bendingVelocityMultiple() { return 0.0; }

Это указывает клиенту игнорировать обновления скорости сервера.В результате скорость клиента и сервера падает из-за несинхронизации и приводит к полученному вами видео.

Если вы установите вместо этого:

get bendingVelocityMultiple() { return 0.8; }

Тогда проблема исчезнет.,Установка bendingVelocityMultiple в ноль может быть полезна в других случаях, например, если вы хотите переместить мяч обратно в центр, когда игрок проиграл.

Ознакомьтесь с документацией дляGameObject

...