Страница 1 из 1

[uNet] Движения объекта/контроллера игрока на сервере

СообщениеДобавлено: 25 июл 2018, 19:17
KanycTa
Столкнулся с такой бедой... Использую uNet для построения авторитарного сервера... Всё вроде получается (ники игроков, верификация версий игры, передача/скачивание файлов с сервера)... Все действия происходят на стороне сервера а на клиенте только идёт получение с сервера данных, отрисовка и сглаживание движений...

Проблема вот в чём, мне никак не удаётся сделать точное проигрывание нажатий игрока (из-за этого предсказания клиента становятся неверными и его откидывает назад)

Пытался делать по этому исходнику https://github.com/atrakeur/unity-unet-authoritative-networking используя вместо SuperCharacterController обычный CharacterController но это приводит к неточному движению на стороне сервера - серверный игрок бежит либо быстро вперёд, либо запаздывает хотя FixedUpdate тикает с одинаковой частотой на клиенте и на сервере...
Покопавшись на форумах выяснил что необходима детерминированность контроллера как в SuperCharacterController... И тут еще одна проблема, как обеспечить детерминированность стандартному контроллеру?

Re: [uNet] Движения объекта/контроллера игрока на сервере

СообщениеДобавлено: 25 июл 2018, 23:31
KanycTa
Нашёл очень хорошую статейку, всё просто и понятно http://www.codersblock.org/blog/client-side-prediction-in-unity-2018

Re: [uNet] Движения объекта/контроллера игрока на сервере

СообщениеДобавлено: 07 авг 2018, 11:45
getAlex

Re: [uNet] Движения объекта/контроллера игрока на сервере

СообщениеДобавлено: 16 авг 2018, 19:48
KanycTa
getAlex писал(а):https://developer.valvesoftware.com/wiki/Source_Multiplayer_Networking


Да что у вас за привычка совать одно и тоже? Вы смотрели ссылку которую я оставил под постом?

Сейчас другая проблема нарисовалась под названием "Physics.Simulate(float)"