@DenisVladimirovich

Как описать просчёт столкновений на сервере?

И так. Народ. Всем привет. Встал у меня такой вопрос. Вот есть у меня на Java серверочек небольшой. Он принимает Input от Unity и изменяет положение, которое отсылается клиенту( авторитарный сервер почти). И встала предо мной такая задача, а именно как просчитать на сервер коллизии либо может кто знает какой костыль на этот случай?
  • Вопрос задан
  • 714 просмотров
Решения вопроса 1
TheTalion
@TheTalion
Для простоты поясню на коллайдере типа круг в 2д пространстве.
Коллайдер с радиусом 3, значит, что с объектом можно взаимодействовать на расстоянии 3 от позиции X и Y. Т.е. коллайдер объекта описывается такими координатами в максимально удаленных от центра точках - X+3;Y+3;X-3;Y-3;
Теперь представим, что второй объект - это тоже круг, но с радиусом 4, поэтому его коллайдер - X+4; Y+4;X-4;Y-4

Итак, для того, чтобы определить позицию на сервере (в системе плюсовых координат) нужно сделать что-то типа:
x1 = obj1.position.x+3; y1 = obj1.position.y+3;
x2 = obj2.position.x+4; y2 = obj2.position.y+4;
Исходя из этого, столкновение для одной стороны можно найти примерно так:.
If(x1 - x2 < 1 & y1 - y2 < 1){//произошло столкновение }

Ну вот такой костыль. Возможно более опытные программисты знают что-то получше. Описал не совсем верно, но в целом алгоритм, думаю, понятен.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Tiendil
@Tiendil
Разработчик ПО.
Колизии на сервере считаются так же, как и на клиенте. Только на сервере.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы