Publication Details
Yet Faster Ray-Triangle Intersection (Using SSE4)
Geometric algorithms, languages, and systems, Raytracing, Graphics data structures and data types
Ray-triangle intersection is an important algorithm, not only in the field of realistic rendering (based on ray tracing), but also in physics simulation, collision detection, modelling, etc. Obviously, the speed of this well-defined algorithm's implementations is important because calls to such a routine are numerous in rendering and simulation applications. Contemporary fast intersection algorithms, which use SIMD instructions, focus on the intersection of ray packets against triangles. For intersection between single rays and triangles, operations such as horizontal addition or dot product are required. The SSE4 instruction set adds the dot product instruction which can be used for this purpose. This article presents a new modification of the fast ray-triangle intersection algorithms commonly used, which - when implemented on SSE4 - outperforms the current state-of-the-art algorithms. It also allows both a single ray and ray packet intersection calculation with the same precomputed data. The speed gain measurements are described and discussed in the article.
@ARTICLE{FITPUB8985, author = "Ji\v{r}\'{i} Havel and Adam Herout", title = "Yet Faster Ray-Triangle Intersection (Using SSE4)", pages = "434--438", journal = "IEEE Transactions on Visualization and Computer Graphics", volume = 2010, number = 3, year = 2010, ISSN = "1077-2626", language = "english", url = "https://www.fit.vut.cz/research/publication/8985" }