2013-03-23 1 views
-1

Я ищу способ определить, сталкивается ли луч с треугольником и расстояние до точки столкновения в 3D.определить, сталкивается ли луч с треугольником и расстояние до точки столкновения, в 3D

метод как код ниже, или что-то подобное

float GetCollisionsoint(Vector3 RayPosition, Vector3 RayDirection, Vector3 a1, Vector3 a2, Vector3 a3) 
    { 
    } 

заранее спасибо!

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

+1

Попробуйте взглянуть на [Геометрические инструменты] (http://www.geometrictools.com/). – Angew

+0

Знаете ли вы, как решить проблему 2D? То есть, учитывая точку и вершины треугольника, вы можете определить, находится ли точка внутри треугольника? – Beta

ответ

0

Dan Sunday представляет algorithm и справочную реализацию. Если нормальный треугольник и u, v векторы предварительно вычислены, алгоритм сводится к внутренним (точка) продуктам. Если предварительно сконфигурированные u, v, n нормированы, существуют дальнейшие оптимизации: то есть <u,u> = <v,v> = 1.