Primitive Intersections

Currently XDG supports ray intersections with the following primitives:

  • linear triangles

  • linear quads

Triangle intersection tests are performed using the Pluecker triangle intersection test. This method uses Pluecker coordinates (formed from the cross-product of the ray direction and triangle edges) to determine if a ray intersects a triangle. It is known for its numerical stability and efficiency, making it suitable for scientific ray tracing applications [1].

Quad intersection tests are performed by splitting the quad into two triangles and performing the Pluecker triangle intersection test on each triangle.

Assumptions about the normals of primitives are based the cannonical ordering established by this paper [2].