In the chapter Other Kinds of Shader in book [3] you find a section about light shaders. In book [1] there are two chapters dealing with light shaders: The chapter Lighting and Shading gives an overview of light source shaders and the chapter A Gallery of Shaders shows the source code of the standard shaders. There you will find the following light source shaders explained:
In the book [2] there is section of chapter Illumination Models and Lights which deals with Light Sources and beside the standard light shaders you will find the source code for the following shaders:
The book [3] will show you some non-standard light shaders:
"hsv" color space:
... lightcolor = color "hsv" (cosangle*10, 1, 1); ...
Here are all the color coordinate systems supported in the shading language:
From the RIB file perspective you should know the following facts about lights. The RenderMan interface defines two types of light sources:
LightSource.
AreaLightSource. The easiest way to
describe those positions is to associate some geometric shape with
the light source.
You can make further distinctions based on the commands used in the light shader:
illuminate or solar statement. See section
5.1 for an example.
illuminate construct needs a position and
optional you can specify a direction axis and an
angle to define a ``cone of light'' with the apex at
position. See section 5.3 for the
use of this construct in the standard pointlight shader by
using only the position. See section
5.4 for the use of this construct with all
possible parameters in the standard shader spotlight.
illuminate(position [,axis,angle]) statement
solar construct restricts illumination to a range
of directions without specifying a position for the source. The
direction axis and the angle are optional. See
section 5.2 for the use of this
statement in the standard shader distantlight. In the book
[1] you will find an example how to use the
solar construct for a skylight shader which defines a
hemisphere.
solar([axis,angle]) statement
Table 5 on page
shows a list of predefined light
source shader variables.