standard shadow mapping:

standard shadow mapping is a two pass algorithm. in the first pass the scene is viewed from the point of view of the light source and a depth image from this view is saved (== shadow map). in the second pass the scene is rendered from the point of view of the observer. as each “pixel” is drawn it is transformed into the ligth source space and tested for visibility to the light source. if it’s not visible to the light source, it’s in shadow and the shading of the “pixel” should be altered accordingly. all shadow mapping technics are somehow based on this algorithm. [Will1978]

perspective shadow mapping:

the differnce between standard shadow mapping and perspective shadow mapping lies in the transformation to the point of view of the light source. in psm this transformation is calculated in the post perspective space of the observer. [Stam2002]

in simpler words: first you transform to the post perspective space of the observer (pm := perspective matrix * modelview matrix) and than apply the light source transformations on the resulting matrix (light source perspective matrix * light source modelview matrix * pm). this means this transformation is dependend of the point of view of the observer. nearer objects are enlarged and far away objects are shrinked, because of the perspective matrix of the observer, which reduces perspective anti-aliasing.

trapezoidal shadow mapping:

“it approximates the camera frustum seen from the light’s view with a trapezoid to compute the shadow map for this trapezoidal area to achieve the goal of good resolution for objects within a focus region, without worsening the polygon offset problem. in addition, it efficiently computes trapezoids (independent of scene complexity) to address the so-called continuity problem where shadows appear and disappear.” [Mart2003]

adaptive shadow mapping:

in this approach the shadow map is not a simple 2D depth image, but a hierarchical grid structure, which is refined when needed. this approach identifies the possible lack of shadow map resolution as a primary cause for shadow map aliasing. [Fern2001]

deep shadow mapping:

“Unlike traditional shadow maps, which store a single depth at each pixel, deep shadow maps store a representation of the fractional visibility through a pixel at all possible depths.” each shadow map texel is not a simple depth value, but a visibility function. [Loko2000]

translucent shadow mapping:

translucent shadow maps are another extension of the standard shadow map with incident light information (irradiance & surface normal) stored additionaly for each texel. this allows efficient rendering of sub-surface scattering. sub-surface scattering is computed on-the-fly by filtering the shadow map neighborhood hierarchical (mip-map). [Stam2003]

soft shadow mapping for linear lights:

in this approach addition visibility information is saved: “the shadow map not only contains information about which object points are visible from a given point light, but also a percentage value that describes how much of the whole linear light source can be seen by that point.” in so called “visibility channels” this makes it possible to create soft shadows with very few sample points. [Heid2000]


second-depth shadow mapping:

second-depth shadow mapping tries to eliminate the bias (polygon offset) needed in ssm with changing the test criteria. not the depth of the visible surface equals the depth of the first surface from the light source is tested, but if the depth of the visible surface is less than the depth of the second surface from the lightsource is tested. [Wang1994]





view frustum optimization to maximize object's image area:

this optimization tries to compute a view frustum, which encloses a given object and maximizes the objects projection in it's image area. a tight bounding quadrilateral is computed and the warp function from this quadrilateral to the rectangular viewing region is calculated. [Lowk2002]

bibliography:

[Will1978]: Williams L., Casting Curved Shadows On Curved Surfaces, Computer Graphics Lab New York Institute of Techno, 1978,

[Stam2002]: Stamminger M. & Drettakis G., Perspective Shadow Maps, REVES - INRIA Sophia-Antipolis, 2002, http://www-sop.inria.fr/reves/publications/data/2002/SD02/PerspectiveShadowMaps.pdf

[Mart2003]: Martin T. & Tiow-Seng Tan, Trapezoidal Shadow Mapping (work in progress), School of Computing, National University of Singapore, 2003, http://www.comp.nus.edu.sg/~tants/tsm.html

[Fern2001]: Randima Fernando, Sebastian Fernandez, Kavita Bala, Donald P. Greenberg, Adaptive Shadow Maps, SIGGRAPH 2001, Computer Graphics Proceedings, 2001, http://www.graphics.cornell.edu/pubs/2001/FFBG01.pdf

[Loko2000]: Lokovic T. & Veach E., Deep Shadow Maps, Proceedings of SIGGRAPH 2000, Computer Graphics Proceedings, Annual Conference Series, pages 385-392, 2000, http://graphics.stanford.edu/papers/deepshadows/

[Stam2003]: Stamminger M. & Dachsbacher C., Translucent Shadow Maps, 14 th Eurographics Symposium on Rendering, 2003, http://www9.informatik.uni-erlangen.de/Persons/Stamminger/Research/Research/tsm

[Heid2000]: Heidrich W. & Brabec S. & Seidel H., Soft Shadow Maps For Linear Lights, EG Rendering Workshop '00, 2000, http://www.cs.ubc.ca/~heidrich/Papers/RW.00_1.pdf

[Wang1994]: Wang Y. & Molnar S., Second-Depth Shadow Mapping, Department of Computer Science University of North Carolina, 1994, http://www.cs.unc.edu/~lastra/Courses/Papers/Wang_Molnar_Second_Depth_Shadow.pdf

[Lowk2002]: Low K. & Ilie A., View Frustum Optimization To Maximize Object's Image Area, Department of Computer Science, University of North Carolina at Chapel Hill, 2002, http://www.cs.unc.edu/~lowk/research/writings/lowk_max_image.pdf