Acadia opened this issue on May 27, 2009 ยท 16 posts
IsaoShi posted Sun, 31 May 2009 at 6:55 AM
RV: raytraced shadows do not use maps at all. The shadows are generated by following each raytrace out from the camera through the imaginary render pixel plane, and calculating the light received at each point that the ray 'hits', plus any additional effects from recursive raytrace bounces due to refraction, reflection, fresnel, or gather. Plus AO of course.
So for example, if a raytrace points to a surface which is partially lit by one or more lights and partially in shadow, the raytrace will hit the object, and 'look' in the direction of each light to see how much illumination it is receiving from it. If there is something in the way, it receives no (or less) light, and if there is nothing in the way it receives more light, and it calculates the appearance of the rendered pixel using that information.
As you know, depth map shadows are calculated for each light before the actual render begins, and stored in memory as a data map showing how much each light illuminates each point (within the field of view that is covered by its associated shadowcam). This makes the render itself quicker, and also these memorised shadow maps can be re-used for subsequent renders, making things quicker still.
"If I were a shadow, I know I wouldn't like to be half of
what I should be."
Mr Otsuka, the old black tomcat in Kafka on the Shore (Haruki
Murakami)