Graphics Reference
In-Depth Information
In 1984, Rob Cook from Pixar published his landmark “Shade Trees” paper
[10], in which he showed how the rendering process could be user-manipulated
by writing “scripts” and inserting them in the proper places in the rendering
pipeline. His paper's abstract says it all, and is still appropriate today:
Shading is an important part of computer imagery, but shaders have
been based on fixed models to which all surfaces must conform. As
computer imagery becomes more sophisticated, surfaces have more
complex shading characteristics and thus require a less rigid shading
model. This paper presents a flexible tree-structured shading model
that can represent a wide range of shading characteristics.
The Shade Tree concept allowed developers to create many different
effects without having to constantly be adding new code permanently into the
renderer. One of the first commercial uses of these shaders was in the movie
Young Sherlock Holmes in 1985, which created the Stained Glass Knight shown
in Figure 2.2. (If you've never seen this movie—egad!—you really need to go
rent it! No computer graphics background is complete without having seen it.)
In the meantime, work on hardware rendering continued along with the
REYES software prototype. Someone made the comment that someday every-
one will carry a small rendering box around on their belt with them. It will
be like a Sony Walkman, they said, but instead would be called a RenderMan
[38] [43], and a name was born. Eventually, the hardware idea was dropped
in favor of a general-purpose software solution, which became the package
Photorealistic RenderMan (prman).
In the meantime, others took the idea of shaders and developed differ-
ent software and hardware approaches to creating graphics scenes. In 1985,
Perlin [34] published his landmark Image Synthesizer paper. His use of a pro-
cedural noise function to make surfaces more interesting probably did more to
promote the use of shaders than any other development. However, it is often
overlooked that this work created surface shading functions with expressions
and flow control, and thus also showed the graphics community how much
could be done with procedural languages in the graphics pipeline.
In 1998, Olano and Lastra [31] developed a shading language for the
PixelFlow graphics system. PixelFlow was a very innovative approach to fast
graphics developed at the University of North Carolina. Some of its ideas on
parallelism can be seen to have influenced today's graphics hardware. Their
shading language achieved 30 frames/sec update rates—a first for a shading
language. In 2001, Proudfoot et al. [39] at Stanford developed a higher-level
shading language that could transparently spread its operations to a combina-
tion of CPU and GPU, wherever it made most sense. It was important because it
allowed a graphics programmer to ride the hardware acceleration capabilities
Search WWH ::




Custom Search