Конгер Д.
Физика для разработчиков компьютерных игр
стр. 187

Ограничивающие сферы

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

Например, этот метод можно применить для поиска столкновений объектов с плоскостью земли. Вот последовательность действий:

1.    Проверим, находится ли объект над плоскостью. Если да, переходим к шагу 2.

2.    Сравним расстояние от материальной точки до поверхности и радиус ограничивающей сферы этой материальной точки. Если радиус больше этого расстояния, произошло столкновение, поэтому переходим к шагу 3. В противном случае пропускаем шаг 3 и повторяем шаги 1 и 2 для следующего объекта в сцене.

3.    Объект столкнулся с землей. Просчитать реакцию на столкновение.

Этот метод работает не только для земли, но и для любой другой плоской поверхности. На рисунке 8.2 показано, как можно применить его для обнаружения столкновений со стеной.

Рассматриваемые объекты не обязательно должны быть шариками. Они могут быть любой формы, просто их нужно поместить в ограничивающие сферы.

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

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

Новости
Косплей Сенуя из Hellblade: Senua’s Sacrifice
Редакция Геймбокса не могла не поделиться с вами прекрасным отечественным косплеем на Сенуя из Hellblade: Senua's Sacrifice.
Bethesda подала в суд на Warner Bros. за Westworld
Как утверждает издание TMZ, компания Bethesda Softworks подала в суд на кинокомпанию Warner Bros. и студию Behaviour Interactive.