Approximating subdivision surfaces with Gregory patches for hardware tessellation

We present a new method for approximating subdivision surfaces with hardware accelerated parametric patches. Our method improves the memory bandwidth requirements for patch control points, translating into superior performance compared to existing methods. Our input is general, allowing for meshes that contain both quadrilateral and triangular faces in the input control mesh, as well as control meshes with boundary. We present two implementations of our scheme designed to run on Direct3D 11 class hardware equipped with a tessellator unit.

[1]  Hugues Hoppe,et al.  Displaced subdivision surfaces , 2000, SIGGRAPH.

[2]  Jason L. Mitchell,et al.  Real-time creased approximate subdivision surfaces , 2009, I3D '09.

[3]  E. Catmull,et al.  Recursively generated B-spline surfaces on arbitrary topological meshes , 1978 .

[4]  Jörg Peters,et al.  Fast Parallel Construction of Smooth Surfaces from Meshes with Tri/Quad/Pent Facets , 2008, Comput. Graph. Forum.

[5]  J. A. Gregory Smooth interpolation without twist constraints , 1974 .

[6]  Pedro V. Sander,et al.  Fast triangle reordering for vertex locality and reduced overdraw , 2007, SIGGRAPH 2007.

[7]  Tony DeRose,et al.  Efficient, fair interpolation using Catmull-Clark surfaces , 1993, SIGGRAPH.

[8]  Jörg Peters,et al.  Curved PN triangles , 2001, I3D '01.

[9]  Paolo Cignoni,et al.  Metro: Measuring Error on Simplified Surfaces , 1998, Comput. Graph. Forum.

[10]  Henning Biermann,et al.  Piecewise smooth subdivision surfaces with normal control , 2000, SIGGRAPH.

[11]  Jörg Peters,et al.  A realtime GPU subdivision kernel , 2005, SIGGRAPH 2005.

[12]  Jörg Peters,et al.  GPU conversion of quad meshes to smooth surfaces , 2008, SPM '08.

[13]  Peter Schröder,et al.  Rapid evaluation of Catmull-Clark subdivision surfaces , 2002, Web3D '02.

[14]  Jörg Peters,et al.  Patching Catmull-Clark meshes , 2000, SIGGRAPH.

[15]  Marc Alexa,et al.  Phong Tessellation , 2008, SIGGRAPH 2008.

[16]  Jörg Peters,et al.  GPU smoothing of quad meshes , 2008, 2008 IEEE International Conference on Shape Modeling and Applications.

[17]  Lucia Longhi Interpolating Patches Between Cubic Boundaries , 1985 .

[18]  Tamy Boubekeur,et al.  Generic Adaptive Mesh Refinement , 2007 .

[19]  Charles T. Loop,et al.  Approximating Catmull-Clark subdivision surfaces with bicubic patches , 2008, TOGS.

[20]  Gang Lin,et al.  An improved vertex caching scheme for 3D mesh rendering , 2006, IEEE Transactions on Visualization and Computer Graphics.

[21]  Hiroaki Chiyokura,et al.  Design of solids with free-form surfaces , 1983, SIGGRAPH.

[22]  Jos Stam,et al.  Exact evaluation of Catmull-Clark subdivision surfaces at arbitrary parameter values , 1998, SIGGRAPH.

[23]  Charles T. Loop,et al.  Quad/Triangle Subdivision , 2003, Comput. Graph. Forum.