Direct and Fast Ray Tracing of NURBS Surfaces
Oliver Abert, Markus Geimer, Stefan C. Müller · 2006
Recently it has been shown that Bezier surfaces can be used as a geometric primitive for interactive ray tracing on a single commodity PC. However, the Bezier representation is restricted, as a large number of control points also imply a high polynomial degree, thus reducing the frame rate significantly. In this work we present a fast, efficient and robust algorithm to ray trace trimmed NURBS surfaces of arbitrary degree. Furthermore, our approach is largely independent of the number of control points of a surface with respect to the rendering performance. Additionally the degree and the number of control points of a surface do not influence the numerical stability of the intersection algorithm. The desired high performance is achieved by taking a novel approach of surface evaluation, which requires only minimal preprocessing. We present a method to transform the computationally expensive Cox-de Boor recursion into a SIMD suitable form that maximizes performance by avoiding the recursion and drastically reduces the number of executed commands