@Zimaell

Как задать движение по серверному времени?

Задумка следующая - на сервере рассчитываются координаты передвижения юнитов, отправляются эти данные на клиенты, далее клиент уже "проигрывает" заданный сценарий.
То есть если игрок если заходит в игру а там уже идет бой то ему расставляются юниты исходя из реального времени, которое было прописано в сценарии.
Пример
индификатор | дата время | координаты x,y,z
unit1 | 2020-08-07 15:00:00 | 0x0x0
unit1 | 2020-08-07 15:00:01 | 2x0x2
unit1 | 2020-08-07 15:00:02 | 4x0x2
unit1 | 2020-08-07 15:00:03 | 6x0x2


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

Суть вопроса - как это лучше всего реализовать? Как вычислить скорость перемещения?

Я думаю сделать так - каждая секунда это чекпоинт, грубо говоря каждая секунда это отрезок от А до В.
Но как рассчитать время перемещения? Ведь в unity скорость рассчитывается Speed * Time.deltaTime, как рассчитать чтобы эта скорость точно попадала по секундам?
  • Вопрос задан
  • 76 просмотров
Пригласить эксперта
Ответы на вопрос 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Синхронизацию времени нужно каждые n-микросекунд делать на серверный "heart-beat".
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы