Raycasting against a triangle is a three step process:
- Create a plane from the three points of the triangle
- Raycast against that plane
- Check if the Raycast result is inside the triangle
We already have functions to implement this entire process. The
FromTriangle function will create a plane from the triangle. We already have a
Raycast function that casts a ray against a plane. We also have a
We can improve the performance of the Raycast by using barycentric coordinates instead of the existing
PointInTriangle test. Barycentric coordinates are a way to represent the position of a point relative to a triangle.
We are going to implement a new function,
Barycentric. This new function will return the ...