This pigment statement appears in a code I found on the web, where depth is a number:
pigment{
function{(depth+1)/3}
color_map{[0 rgb <0,0,0>][1/3 rgb <0,0,1>][2/3 rgb <1,0,1>][1 rgb <1,1,1>]}
}
What does function{(depth+1)/3} do? As I understand, this is the constant function returning (depth+1)/3. What is the role of this function in the pigment statement?
Ok, I understand now. That's easy.
If depth = 1, (depth+1)/3 = 2/3, so the color map returns the color corresponding to 2/3, that is,
rgb<1,0,1>.If depth = 2, (depth+1)/3 = 1, so the color map returns
rgb<1,1,1>.If depth = 0.5, (depth+1)/3 = 0.5, so the color map returns the color interpolated between
rgb<0,0,1>(1/3) andrgb<1,0,1>(2/3).A
color_mapis a map, and the value of the function gives the "key" of this map.