Посмотрите на теорему SAT (теорема о разделении осей), она самая быстрая и простая из всех.
Теория об этом такова: если вы можете нарисовать линию, которая разделяет треугольники, то они не сталкиваются.
Как уже было сказано, сначала выполните раннее обнаружение AABB, а когда два объекта сталкиваются, проверяйте каждый многоугольник объекта A на каждом многоугольнике объекта B.
Начиная с 2D, чтобы проверить, сталкиваются ли два полигона, вы получаете их экстенты по возможным осям (в данном случае X и Y), если эти экстенты пересекаются, то сталкиваются полигоны.
На этой странице вы можете найти очень хорошее объяснение того, как оно работает и как его применять:
http://www.metanetsoftware.com/technique/tutorialA.html
Чтобы применить его к 3D, просто используйте края каждого многоугольника в качестве разделительных осей.
Если экстенты на этих осях пересекаются, то полигоны сталкиваются.
Кроме того, этот метод разрешает столкновения для движущихся объектов, давая также импульс столкновения (разрешите относительную угловую скорость, вычитая скорость B из скорости A, таким образом, задача сводится к движущемуся и статическому объектам, и добавьте скорость на оси, которую вы проверяете, до степени многоугольника A, если они пересекаются, оставьте исходную протяженность многоугольника, и вы получите момент столкновения).