Resolution independent curve rendering using programmable graphics hardware

We present a method for resolution independent rendering of paths and bounded regions, defined by quadratic and cubic spline curves, that leverages the parallelism of programmable graphics hardware to achieve high performance. A simple implicit equation for a parametric curve is found in a space that can be thought of as an analog to texture space. The image of a curve's Bezier control points are found in this space and assigned to the control points as texture coordinates. When the triangle(s) corresponding to the Bezier curve control hull are rendered, a pixel shader program evaluates the implicit equation for a pixel's interpolated texture coordinates to determine an inside/outside test for the curve. We extend our technique to handle anti-aliasing of boundaries. We also construct a vector image from mosaics of triangulated Bezier control points and show how to deform such images to create resolution independent texture on three dimensional objects.

[1]  T. Sederberg Implicit and parametric curves and surfaces for computer aided geometric design , 1983 .

[2]  Robert F. Sproull,et al.  Filtering edges for gray-scale displays , 1981, SIGGRAPH '81.

[3]  Lakshman Prasad,et al.  Morphological Analysis of Shapes , 1997 .

[4]  Dennis S. Arnon,et al.  Topologically reliable display of algebraic curves , 1983, SIGGRAPH.

[5]  Hugues Hoppe,et al.  New quadric metric for simplifying meshes with appearance attributes , 1999, Proceedings Visualization '99 (Cat. No.99CB37067).

[6]  Bruce Walter,et al.  Feature-Based Textures , 2004, Rendering Techniques.

[7]  Jeff Tupper,et al.  Reliable two-dimensional graphing methods for mathematical formulae with two free variables , 2001, SIGGRAPH.

[8]  Erik Lindholm,et al.  A user-programmable vertex engine , 2001, SIGGRAPH.

[9]  Pradeep Sen,et al.  Silhouette maps for improved texture magnification , 2004, Graphics Hardware.

[10]  Gabriel Taubin,et al.  Distance approximations for rasterizing implicit curves , 1994, TOGS.

[11]  Thomas W. Sederberg Piecewise algebraic surface patches , 1985, Comput. Aided Geom. Des..

[12]  Jens H. Krüger,et al.  GPGPU: general purpose computation on graphics hardware , 2004, SIGGRAPH '04.

[13]  Arthur Cayley,et al.  A Treatise on the Higher Plane Curves: Intended as a Sequel to a Treatise on Conic Sections , 2001 .

[14]  James F. Blinn,et al.  Jim Blinn's Corner: Notation, Notation, Notation , 2002 .

[15]  William H. Press,et al.  Numerical recipes in C , 2002 .

[16]  Stefan Gumhold,et al.  Splatting Illuminated Ellipsoids with Depth Correction , 2003, VMV.

[17]  Jack Tumblin,et al.  Bixels: Picture Samples with Sharp Embedded Boundaries , 2004, Rendering Techniques.

[18]  Tony DeRose,et al.  A geometric characterization of parametric cubic curves , 1989, TOGS.

[19]  William H. Press,et al.  The Art of Scientific Computing Second Edition , 1998 .

[20]  Jindong Chen,et al.  Modeling with cubic A-patches , 1995, TOGS.

[21]  Jarek Rossignac,et al.  Blister: GPU-based rendering of Boolean combinations of free-form triangulated shapes , 2005, SIGGRAPH 2005.