Collision Detection FAQ
version 26.07.2001
Данный документ пока находится на
начальной стадии, так что критика
приветствуется.
Если у вас есть вопросы, предложения или
комментарии - пишите мне на sneer@front.ru
Введение
Что такое Collision Detection и зачем оно нужно?
Что такое Bounding Volume
Что такое Bounding Sphere?
Что такое Bounding Box?
Что такое AABB?
Что такое OBB?
Что такое Convex Polyhedron (выпуклый многогранник)?
Что такое Convex Hull?
Использование AABB
Как работать с AABB?
Как обнаружить столкновение
AABB-AABB?
Как обнаружить
столкновение AABB-OBB?
Как обнаружить
столкновение AABB-Sphere?
Как обнаружить
пересечение AABB-Line?
Как обнаружить
пересечение AABB-Triangle?
Пример класса AABB
Использование OBB
Как работать с OBB?
Как обнаружить столкновение OBB-OBB?
Как обнаружить столкновение OBB-AABB?
Как обнаружить столкновение OBB-Sphere?
Как обнаружить пересечение OBB-Line?
Как обнаружить пересечение
OBB-Triangle?
Пример класса OBB
Использование выпуклых многогранников
Как обнаружить попадает ли точка
внутрь многогранника?
Как обнаружить пересечение линии и
многогранника?
Как обнаружить
пересечение плоскости и многогранника
Как обнаружить столкновение двух
выпуклых многогранников?
Что это за алгоритм Separating
Plane?
Что это за алгоритм GJK?
Что это за алгоритм Separating Vector?
Что это за алгоритм Lin-Canny
(V-Clip)?
Как определить точки контакта двух
многогранников?
Другие вопросы
Это все мне не подходит - мне нужно
обнаружить столкновение сложных
невыпуклых объектов, например двух
роботов.
У меня огромное
количество объектов на уровне, из-за
проверки их всех друг с другом, стоят
страшные тормоза. Что делать?
Ну обнаружил я столкновение, а что
дальше-то делать?
Источники информации
Демку, в которой реализованы некоторые описанные здесь алгоритмы
можно взять здесь .