Interactive Smooth and Curved Shell Mapping

Shell mapping is a technique to represent three-dimensional surface details. This is achieved by extruding the triangles of an existing mesh along their normals, and mapping a 3D function (e.g., a 3D texture) into the resulting prisms. Unfortunately, such a mapping is nonlinear. Previous approaches perform a piece-wise linear approximation by subdividing the prisms into tetrahedrons. However, such an approximation often leads to severe artifacts. In this paper we present a correct (i.e., smooth) mapping that does not rely on a decomposition into tetrahedrons. We present an efficient GPU ray casting algorithm which provides correct parallax, self-occlusion, and silhouettes, at the cost of longer rendering times. The new formulation also allows modeling shells with smooth curvatures using Coons patches within the prisms. Tangent continuity between adjacent prisms is guaranteed, while the mapping itself remains local, i.e. every curved prism content is modeled at runtime in the GPU without the need for any precomputation. This allows instantly replacing animated triangular meshes with prism-based shells.

[1]  Kun Zhou,et al.  Mesh quilting for geometric texture synthesis , 2006, ACM Trans. Graph..

[2]  Kenneth I. Joy,et al.  Shell maps , 2005, ACM Trans. Graph..

[3]  James T. Kajiya,et al.  Rendering fur with three dimensional textures , 1989, SIGGRAPH.

[4]  Matthias M. Wloka,et al.  Per-Pixel Displacement Mapping with Distance Functions , 2005 .

[5]  Robert L. Cook,et al.  The Reyes image rendering architecture , 1987, SIGGRAPH.

[6]  Fabrice Neyret,et al.  Modeling, Animating, and Rendering Complex Scenes Using Volumetric Textures , 1998, IEEE Trans. Vis. Comput. Graph..

[7]  Xavier Décoret,et al.  Rendering geometry with relief textures , 2006, Graphics Interface.

[8]  Sumanta Pattanaik,et al.  Interval Mapping , 2005 .

[9]  Pat Hanrahan,et al.  Geometry Caching for Ray-Tracing Displacement Maps , 1996, Rendering Techniques.

[10]  Max A. Viergever,et al.  Acceleration of ray-casting using 3-D distance transforms , 1992, Other Conferences.

[11]  Manuel M. Oliveira,et al.  An effi-cient representation for surface details , 2005 .

[12]  James F. Blinn,et al.  Texture and reflection in computer generated images , 1998 .

[13]  Cass W. Everitt,et al.  Interactive Order-Independent Transparency , 2001 .

[14]  Hans-Peter Seidel,et al.  Ray-tracing Procedural Displacement Shaders , 1998, Graphics Interface.

[15]  Stephen Lin,et al.  View-dependent displacement mapping , 2003, ACM Trans. Graph..

[16]  Manuel Menezes de Oliveira Neto,et al.  Relief mapping of non-height-field surface details , 2006, I3D '06.

[17]  John W. Patterson,et al.  Inverse Displacement Mapping , 1991, Comput. Graph. Forum.

[18]  Stephen Lin,et al.  Generalized Displacement Maps , 2004, Rendering Techniques.

[19]  Manuel Menezes de Oliveira Neto,et al.  Real-time relief mapping on arbitrary polygonal surfaces , 2005, I3D '05.

[20]  Charles D. Hansen,et al.  Ray Bilinear Patch Intersections , 2004, J. Graphics, GPU, & Game Tools.

[21]  Andreas Kolb,et al.  Efcient Empty Space Skipping for Per-Pixel Displacement Mapping , 2005 .

[22]  Serban D. Porumbescu,et al.  Shell maps , 2005, SIGGRAPH '05.

[23]  Dufort Luc,et al.  Interactive Rendering of Meso-structure Surface Details using Semi-transparent 3D Textures , 2005 .

[24]  Stefan Guthe,et al.  Hardware Accelerated Per-Pixel Displacement Mapping , 2004, Graphics Interface.

[25]  Kun Zhou,et al.  Mesh quilting for geometric texture synthesis , 2006, SIGGRAPH 2006.

[26]  Peter Shirley,et al.  Direct Ray Tracing of Smoothed and Displacement Mapped Triangles , 2000 .

[27]  Peter Shirley,et al.  Direct Ray Tracing of Displacement Mapped Triangles , 2000, Rendering Techniques.

[28]  James F. Blinn,et al.  Simulation of wrinkled surfaces , 1978, SIGGRAPH.