I've got a few question regarding some details of the occlusion shader
example in the 3Delight docs. I was wondering if the larger RenderMan
community might be able to clarify for me.
light occ_light(
float samples = 64;
string __category = "occlusion";
float __nonspecular = 1; )
{
normal shading_normal = normalize( faceforward(Ns, I) );
illuminate( Ps + shading_normal )
{
Cl = 1 - occlusion( Ps, shading_normal, samples );
}
}
1) What is the meaning of the params float __nonspecular = 1 and
string __category = "occlusion"? Both are unused within the shader.
2) Ps + shading_normal. Why is Ps (the surface point being occlusion
shaded) translated in the direction of the shading normal away from
the surface of the object being occlusion tested? This makes no
sense.
Thanks,
Doug