A language for shading and lighting calculations

A shading language provides a means to extend the shading and lighting formulae used by a rendering system. This paper discusses the design of a new shading language based on previous work of Cook and Perlin. This language has various types of shaders for light sources and surface reflectances, point and color data types, control flow constructs that support the casting of outgoing and the integration of incident light, a clearly specified interface to the rendering system using global state variables, and a host of useful built-in functions. The design issues and their impact on the implementation are also discussed.

[1]  G. L. Steele Common Lisp , 1990 .

[2]  Roy Hall,et al.  Illumination and Color in Computer Generated Imagery , 1988, Monographs in Visual Communication.

[3]  Turner Whitted,et al.  An improved illumination model for shaded display , 1979, CACM.

[4]  Robert L. Cook,et al.  Shade trees , 1984, SIGGRAPH.

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

[6]  Ken Perlin,et al.  An image synthesizer , 1988 .

[7]  Robert L. Cook,et al.  Stochastic sampling in computer graphics , 1988, TOGS.

[8]  Alyn P. Rockwood,et al.  Clamping: A method of antialiasing textured surfaces by bandwidth limiting in object space , 1982, SIGGRAPH.

[9]  J. P. Lewis,et al.  Algorithms for solid noise synthesis , 1989, SIGGRAPH.

[10]  Andrew Witkin,et al.  A modeling testbed , 1989 .

[11]  R. Hall Color Reproduction and Illumination Models , 1987 .

[12]  G. S. P. Miller From wire-frames to furry animals , 1989 .

[13]  John E. Howland,et al.  Computer graphics , 1990, IEEE Potentials.

[14]  James T. Kajiya,et al.  Anisotropic reflection models , 1985, SIGGRAPH.

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

[16]  Turner Whitted,et al.  A Software Testbed for the Development of 3D Raster Graphics Systems , 1982, ACM Trans. Graph..

[17]  Bjarne Stroustrup,et al.  C++ Programming Language , 1986, IEEE Softw..

[18]  John Dill,et al.  An application of color graphics to the display of surface curvature , 1981, SIGGRAPH '81.

[19]  Tom Duff,et al.  Compositing digital images , 1984, SIGGRAPH.

[20]  Donald P. Greenberg,et al.  A Comprehensive Light-Source Description for Computer Graphics , 1984, IEEE Computer Graphics and Applications.

[21]  James T. Kajiya,et al.  The rendering equation , 1986, SIGGRAPH.

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

[23]  C. R. Hoffman,et al.  Illumination and Reflection Maps : Simulated Objects in Simulated and Real Environments Gene , 1984 .

[24]  Ned Greene,et al.  Environment Mapping and Other Applications of World Projections , 1986, IEEE Computer Graphics and Applications.

[25]  Eric A. Bier,et al.  Two-Part Texture Mappings , 1986, IEEE Computer Graphics and Applications.