Усовершенствование портала Минковского

Скриншот из XenoCollide, первой реализации MPR

Алгоритм обнаружения столкновений Minkowski Portal Refinement представляет собой метод определения того, пересекаются ли две выпуклые фигуры .

Алгоритм был создан Гэри Снетеном в 2006 году и впервые опубликован в Game Programming Gems 7. Алгоритм использовался в Tomb Raider: Underworld и других играх, созданных Crystal Dynamics и ее дочерними студиями в рамках Eidos Interactive .

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

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

  • Снетен, Гэри (2008) «Сложные столкновения стали проще», Game Programming Gems 7 , 165–178
  • Снетен, Гэри (2008) «Домашняя страница XenoCollide»
  • Реализация с открытым исходным кодом: libccd


Взято с "https://en.wikipedia.org/w/index.php?title=Minkowski_Portal_Refinement&oldid=1223558514"