Watertight Ray/Triangle Intersection
Sven Woop, Carsten Benthin, Ingo Wald
In Journal of Computer Graphics Techniques (JCGT), 2(1), June 2013.
Abstract: We propose a novel algorithm for ray/triangle intersection tests that, unlike most other such algorithms, is watertight at both edges and vertices for adjoining triangles, while also main- taining the same performance as simpler algorithms that are not watertight. Our algorithm is straightforward to implement, and is, in particular, robust for all triangle configurations including extreme cases, such as small and needle-like triangles. We achieve this robustness by transforming the intersection problem using a translation, shear, and scale transformation into a coordinate space where the ray starts at the origin and is directed, with unit length, along one coordinate axis. This simplifies the remaining intersection problem to a 2D problem where edge tests can be done conservatively using single-precision floating-point arithmetic. Using our algorithm, numerically challenging cases, where single precision is insufficient, can be detected with almost no overhead and can be accurately handled through a (rare) fallback to double precision. Because our algorithm is conservative but not exact, we must dynamically enlarge bounds during BVH traversal to conservatively bound the triangles intersected.
Article URL: http://jcgt.org/published/0002/01/05/
BibTeX format:
@article{Woop:2013:WRI,
  author = {Sven Woop and Carsten Benthin and Ingo Wald},
  title = {Watertight Ray/Triangle Intersection},
  journal = {Journal of Computer Graphics Techniques (JCGT)},
  volume = {2},
  number = {1},
  pages = {65--82},
  month = jun,
  year = {2013},
}
Search for more articles by Sven Woop.
Search for more articles by Carsten Benthin.
Search for more articles by Ingo Wald.

Return to the search page.


graphbib: Powered by "bibsql" and "SQLite3."