Real-time shading

Real-time procedural shading was once seen as a distant dream. When the first version of this course was offered four years ago, real-time shading was possible, but only with one-of-a-kind hardware or by combining the effects of tens to hundreds of rendering passes. Today, almost every new computer comes with graphics hardware capable of interactively executing shaders of thousands to tens of thousands of instructions. This course has been redesigned to address today's real-time shading capabilities and to provide more practical information for practitioners. The morning sessions cover the more advanced technical aspects of creating a shading system. The afternoon sessions cover practical details of real-time shading use, including an overview of recently developed algorithms that run well on today's shading hardware and presentations on the latest hardware developments from several leading hardware vendors. The course concludes with the popular panel-style question and answer session, where participants can ask questions of any presenter or suggest topics of discussion.

[1]  B. Smith,et al.  Geometrical shadowing of a random rough surface , 1967 .

[2]  Christophe Schlick,et al.  A Customizable Reflectance Model for Everyday Rendering , 1993 .

[3]  Michael D. McCool,et al.  Metaprogramming GPUs with Sh , 2004 .

[4]  Anselmo Lastra,et al.  A shading language on graphics hardware: the pixelflow shading system , 1998, SIGGRAPH.

[5]  William R. Mark,et al.  Cg: a system for programming graphics hardware in a C-like language , 2003, ACM Trans. Graph..

[6]  Pat Hanrahan,et al.  A real-time procedural shading system for programmable graphics hardware , 2001, SIGGRAPH.

[7]  Pat Hanrahan,et al.  An efficient representation for irradiance environment maps , 2001, SIGGRAPH.

[8]  Mark Segal,et al.  The OpenGL Graphics System: A Specification , 2004 .

[9]  Maryann Simmons,et al.  Per-pixel smooth shader level of detail , 2003, SIGGRAPH '03.

[10]  Hans-Peter Seidel,et al.  Towards interactive bump mapping with anisotropic shift-variant BRDFs , 2000, Workshop on Graphics Hardware.

[11]  Erik Ruf,et al.  Specializing shaders , 1995, SIGGRAPH.

[12]  Alain Fournier,et al.  Separating Reflection Functions for Linear Radiosity , 1995, Rendering Techniques.

[13]  Peter-Pike J. Sloan,et al.  Time critical lumigraph rendering , 1997, SI3D.

[14]  Hans-Peter Seidel,et al.  Sampling procedural shaders using affine arithmetic , 1997, SIGGRAPH '97.

[15]  Michael McCool,et al.  SMASH: A Next-Generation API for Programmable Graphics Accelerators , 2000 .

[16]  Hans-Christian Hege,et al.  Fast Display of Illuminated Field Lines , 1997, IEEE Trans. Vis. Comput. Graph..

[17]  Steve D. Upstill,et al.  The renderman companion - a programmer's guide to realistic computer graphics , 1990 .

[18]  Gavin S. P. Miller,et al.  Lazy Decompression of Surface Light Fields for Precomputed Global Illumination , 1998, Rendering Techniques.

[19]  David Salesin,et al.  Hierarchical image caching for accelerated walkthroughs of complex environments , 1996, SIGGRAPH.

[20]  John M. Snyder,et al.  Generative Modeling for Computer Graphics and Cad: Symbolic Shape Design Using Interval Analysis , 1992 .

[21]  Dan B. Goldman Fake fur rendering , 1997, SIGGRAPH.

[22]  K. Torrance,et al.  Theory for off-specular reflection from roughened surfaces , 1967 .

[23]  F. Kenton Musgrave,et al.  The synthesis and rendering of eroded fractal terrains , 1989, SIGGRAPH.

[24]  Ulrich Neumann,et al.  Real-time procedural textures , 1992, I3D '92.

[25]  John G. Eyles,et al.  PixelFlow: high-speed rendering using image composition , 1992, SIGGRAPH.

[26]  Pat Hanrahan,et al.  A language for shading and lighting calculations , 1990, SIGGRAPH.

[27]  Mark Segal,et al.  Fast shadows and lighting effects using texture mapping , 1992, SIGGRAPH.

[28]  John M. Snyder,et al.  Interval analysis for computer graphics , 1992, SIGGRAPH.

[29]  Donald P. Greenberg,et al.  Non-linear approximation of reflectance functions , 1997, SIGGRAPH.

[30]  Daniel G. Aliaga Visualization of complex models using dynamic texture-based simplification , 1996, Proceedings of Seventh Annual IEEE Visualization '96.

[31]  Greg Turk,et al.  Re-tiling polygonal surfaces , 1992, SIGGRAPH.

[32]  Michael D. McCool,et al.  Homomorphic factorization of BRDFs for high-performance rendering , 2001, SIGGRAPH.

[33]  Nelson L. Max,et al.  Smooth transitions between bump rendering algorithms , 1993, SIGGRAPH.

[34]  Rüdiger Westermann,et al.  Efficiently using graphics hardware in volume rendering applications , 1998, SIGGRAPH.

[35]  Gregory J. Ward,et al.  Measuring and modeling anisotropic reflection , 1992, SIGGRAPH.

[36]  Marc Levoy,et al.  Light field rendering , 1996, SIGGRAPH.

[37]  Marc Olano,et al.  Interactive multi-pass programmable shading , 2000, SIGGRAPH.

[38]  Michael Garland,et al.  Simplifying surfaces with color and texture using quadric error metrics , 1998, Proceedings Visualization '98 (Cat. No.98CB36276).

[39]  Carlo H. Séquin,et al.  Adaptive display algorithm for interactive frame rates during visualization of complex virtual environments , 1993, SIGGRAPH.

[40]  Douglas Voorhies,et al.  Reflection vector shading hardware , 1994, SIGGRAPH.

[41]  William E. Lorensen,et al.  Decimation of triangle meshes , 1992, SIGGRAPH.

[42]  Michael D. McCool,et al.  Shader metaprogramming , 2002, HWWS '02.