21.7. Further Information
The RenderMan Shading Language is specified in Pixar's The RenderMan Interface Specification (2000), and its use is described in the books The RenderMan Companion: A Programmer's Guide to Realistic Computer Graphics (Upstill 1990) and Advanced RenderMan: Creating CGI for Motion Pictures (Apodaca and Gritz 1999).
OpenGL Shader and ISL are described in the SIGGRAPH 2000 paper Interactive Multi-Pass Programmable Shading. The book Real-Time Shading by Olano, Hart, Heidrich, and McCool (2002) contains chapters describing various shading languages, including RenderMan, ISL, and shading languages defined and implemented by researchers at the University of North Carolina, Stanford, and the University of Waterloo.
The Stanford Real-Time Shading Language is described in the SIGGRAPH 2001 paper, A Real-Time Procedural Shading System for Programmable Graphics Hardware, and in the course notes for Real-Time Shading, Course 24, SIGGRAPH 2001.
There are sure to be books out that describe Microsoft's HLSL, but at the time of this writing, the only documentation I could find is available from Microsoft on the DirectX 9 page of its Web site, http://www.microsoft.com/ directx. A good starting point is Introduction to the DirectX 9 High-Level Shader Language by Craig Peeper and Jason Mitchell. This paper also appears as a chapter in the book ShaderX2: Shader Programming Tips and Tricks with DirectX 9.0 by Wolfgang Engel.
Cg is described in documentation from NVIDIA in the book The Cg Tutorial: The Definitive Guide to Programmable Real-Time Graphics by Fernando and Kilgard (2003) and in the SIGGRAPH 2003 paper Cg: A System for Programming Graphics Hardware in a C-like Language.
The bibliography at the end of this book contains references to other notable noncommercial shading languages.