Ray Casting of Trimmed NURBS Surfaces on the GPU

Abstract

We propose a conceptual extension of the standard triangle-based graphics pipeline by an additional intersection stage. The corresponding intersection program performs ray-object intersection tests for each fragment of an object's bounding volume. The resulting hit fragments are transferred to the fragment shading stage for computing the illumination and performing further fragment operations. Our approach combines the efficiency of the standard hardware graphics pipeline with the advantages of ray casting such as pixel accurate rendering and exact normal as well as early ray termination. This concept serves as a framework for the implementation of an interactive ray casting system for trimmed NURBS surfaces. We show how to realize an iterative ray-object intersection method for NURBS primitives as an intersection program. Convex hulls are used as tight bounding volumes for the NURBS patches to minimize the number of fragments to be processed. In addition, we developed a trimming algorithm for the GPU that works with an exact representation of the trimming curves. First experiments with our implementation show that real-time rendering of medium complex scenes is possible on current graphics hardware

Publication

Pabst, H.-F., Springer, J. P., Schollmeyer, A., Lenhardt, R., Lessig, C., Froehlich, B.,
Ray Casting of Trimmed NURBS Surfaces on the GPU
IEEE Symposium on Interactive Ray Tracing 2006