Продолжаем тему синка. В последнем патче 1.32.6 пофиксили десинхи при высоких рейтах таймера, однако возникает следующий вопрос.
Как иметь низкий синк рейт по сети, при этом высокий период локально?
Есть ли способ сделать это не имея отдельно невидимого юнита с 1/20 сек и локальный эффект с 1/120+ сек частотой обновления и интерполяцией?
Вот здесь пример о том, что я имею ввиду
Или же можно смело иметь высокие периоды и вц3 сам будет копить все изменения в буфер и делать синк по своему внутреннему периоду?

Принятый ответ

ScorpioT1000, десинк происходит когда разница в стейтах на разных машинах дошла до того, что одно из проверяемых событий вернуло разный результат на разных машинах. Никто не пересылает весь стейт каждый степ и тем более не сверяет его полностью. Иначе не работали бы такие трюки, например, как создание юнитов с разным id но полностью одинаковыми данными и десинк возникал бы не при обращении к различающимся данным, а в момент возникновения этого различия.

Еще, скорее всего, пересылают хеш стейта, для проверки синхронизации, это намного дешевле пересылки самого стейта.
`
ОЖИДАНИЕ РЕКЛАМЫ...
2
10
4 года назад
2
Ясно, пойду сделаю мили на стандарте...
0
24
4 года назад
0
В варкрафте параллельный синхронный локстэп - по сети передается необходимый для синхронизации минимум информации вроде пользовательского ввода, а стейт объектов каждый степ не передается.
0
37
4 года назад
0
prog, что-то я тебя не понял, как тогда в твоей логике десинки происходят?
0
24
4 года назад
Отредактирован prog
0
ScorpioT1000, десинк происходит когда разница в стейтах на разных машинах дошла до того, что одно из проверяемых событий вернуло разный результат на разных машинах. Никто не пересылает весь стейт каждый степ и тем более не сверяет его полностью. Иначе не работали бы такие трюки, например, как создание юнитов с разным id но полностью одинаковыми данными и десинк возникал бы не при обращении к различающимся данным, а в момент возникновения этого различия.

Еще, скорее всего, пересылают хеш стейта, для проверки синхронизации, это намного дешевле пересылки самого стейта.
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.