Синхронизация времени
Для многих алгоритмов вам нужно, чтобы часы были синхронизированы между клиентом и сервером. Mirror делает это автоматически за вас.
Чтобы получить текущее время, используйте этот код:
Он вернет одно и то же значение на клиенте и серверах. Он начинается с 0 при запуске сервера. Обратите внимание, что время является типом double и никогда не должно быть приведено к типу float. Приведение этого значения к значению float означает, что через некоторое время часы потеряют точность:
через 1 день точность снижается до 8 мс
через 10 дней точность снижается до 62 мс
через 30 дней точность снижается до 250 мс
через 60 дней точность снижается до 500 мс
Mirror также будет рассчитывать RTT(Время приема-передачи) как видно из приложения:
Вы можете измерить точность.
например, если это возвращает значение 0,2, это означает, что измерения времени колеблются вверх и вниз примерно на 0,2 с
Сбои в работе сети компенсируются сглаживанием значений с помощью EMA. Вы можете настроить, как часто вы хотите, чтобы ping отправлялся:
Вы также можете настроить, сколько результатов проверки связи будет использоваться при расчете:
Last updated