Quote:Original post by Anonymous Poster
We are using Cascading Shadow Maps (2 physical maps emulates 6 logical
cascaded maps) in our current game with great success
http://www.elmatador.net/images/Gallery/JAN06/JAN06_screenshot_ElMatador04.jpg
http://www.elmatador.net/images/Gallery/JAN06/JAN06_screenshot_ElMatador08.jpg
http://www.elmatador.net/images/Gallery/JAN06/JAN06_screenshot_ElMatador02.jpg
Can you describe how you implement CSM? There are some approaches, I'll sketch the one I imagine 3D Mark 2006 is using (or you might say the one I implemented ;-):
1. Divide the view frustum into five adjacent (but not overlapping) frustums along the viewer's z-Axis.
2. For each frustum - starting with the most distant one - do:
2.1. Clear screen z-buffer (but don't clear the color)
2.2. Create a standard shadow map for the current frustum
2.3. Apply this shadow map to the scene for the current frustum (this means only to apply the frustum's projection matrix to the scene) such that a black and white image for shadowed and non-shadows regions is drawn. The color information for frustums closer to the viewer overlap that of more distant ones (kind of painter algorithm).
3. Use the screen as a texture and render the scene using real materials and that shadow information
Is this a particular inefficient way of doing CSM?