Сначала проясните терминологию:
Обнаружение пересечения скажет вам, пересекаются ли две вещи.
Обнаружение столкновения скажет, столкнутся ли две вещи.
Здесь есть разница. Если один объект [Полигон А] движется быстро, и вы используете тесты на пересечение, он может быть непересекающимся, проходить мимо Полигона В и затем находиться на другой стороне, также не пересекающейся.
Обнаружение столкновения, с другой стороны, скажет: «Полигон A столкнется с Полигоном B». Есть небольшая разница, поэтому выражение «Столкновение ... с некоторым движением» несколько излишне.
Наиболее интуитивно понятный способ обнаружения столкновений состоит в том, чтобы вычистить полигоны в течение временного шага и выполнить тесты пересечения с полученными полигонами.
В любом случае:
Эта страница содержит много информации об определении, пересекаются ли две фигуры .
Эта страница специально посвящена лучам, плоскостям и треугольникам и содержит исходный код.