Корабли - проблемы рассинхронизации.

Теги:
 
+
-
edit
 

Balancer

администратор
★★★★★
Причины очень просты.

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

Т.е., начиная двигаться из точки A в точку Б, и при этом имея нос, направленный не на Б, он начнёт двигаться в прежнем направлении и понемногу поворачивать носом к точке Б.

В результате, двигаться он будет не по прямой, а по дуге окружности, до тех пор, пока не повернёт на угол, смотрящий в сторону Б. После этого - пойдёт по прямой.

Однако, сервер перемещение считает по прямой.

Естественно, мало того, что координаты корабля у клиента и у сервера будут различаться, но отличие будет даже во времени прохождения маршрута! У клиента корабль проходит больший путь и поэтому придёт в контрольную точку с опозданием.

Правильное решение - написание формулы расчёта координат движущегося корабля, точно соответствующей клиентской.
RU Diаmond #07.06.2007 15:14  @Balancer#11.10.2006 10:48
+
-
edit
 

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru