Direct evaluation of NURBS curves and surfaces on the GPU

  • Authors:
  • Adarsh Krishnamurthy;Rahul Khardekar;Sara McMains

  • Affiliations:
  • University of California, Berkeley;University of California, Berkeley;University of California, Berkeley

  • Venue:
  • Proceedings of the 2007 ACM symposium on Solid and physical modeling
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents a new method to evaluate and display trimmed NURBS surfaces using the Graphics Processing Unit (GPU). Trimmed NURBS surfaces, the de facto standard in commercial 3D CAD modeling packages, are currently tessellated into triangles before being sent to the graphics card for display since there is no native hardware support for NURBS. Previous GPU-based NURBS display methods relied on first approximating the NURBS patches with lower degree Bezier patches before evaluation. Our method uses a GPU fragment program to evaluate the surface point coordinates of the original NURBS patch directly, from the control points and knot vectors stored as textures in graphics memory. This evaluated surface is trimmed during display using a dynamically generated trim-texture calculated via alpha blending. The implementation incorporates dynamic Level of Detail (LOD) for real-time interaction at different resolutions of the NURBS surfaces. We obtain rendering speeds at least one order of magnitude faster than evaluation using the CPU.