PNG1 triangles for tangent plane continuous surfaces on the GPU

Christoph Funfzig, Kerstin Muller, Dianne Hansford, Gerald Farin
PRISM Lab, Arizona State University, Tempe, USA
Proceedings of graphics interface 2008, GI ’08


   title={PNG1 triangles for tangent plane continuous surfaces on the GPU},

   author={F{\”u}nfzig, C. and M{\”u}ller, K. and Hansford, D. and Farin, G.},

   booktitle={Proceedings of graphics interface 2008},



   organization={Canadian Information Processing Society}


Download Download (PDF)   View View   Source Source   



Improving the visual appearance of coarse triangle meshes is usually done with graphics hardware with per-pixel shading techniques. Improving the appearance at silhouettes is inherently hard, as shading has only a small influence there and the geometry must be corrected. With the new geometry shader stage released with DirectX 10, the functionality to generate new primitives from an input primitive is available. Also the shader can access a restricted primitive neighborhood. In this paper, we present a curved surface patch that can deal with this restricted data available in the geometry shader. A surface patch is defined over a triangle with its vertex normals and the three edge neighbor triangles. Compared to PN triangles, which define a curved patch using just the triangle with its vertex normals, our surface patch is G^1 continuous with its three neighboring patches. The patch is obtained by blending two cubic Bezier patches for each triangle edge. In this way, our surface is especially suitable for efficient, high-quality tessellation on the GPU. We show the construction of the surface and how to add special features such as creases. Thus, the appearance of the surface patch can be fine-tuned easily. The surface patch is easy to integrate into existing polygonal modeling and rendering environments. We give some examples using Autodesk Maya.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2021 hgpu.org

All rights belong to the respective authors

Contact us: