Shadow mapping or shadowing projection is a process by which shadows are added to 3D computer graphics. This concept was introduced by Lance Williams in 1978, in a paper entitled "Casting curved shadows on curved surfaces." Since then, it has been used both in pre-rendered and realtime scenes in many console and PC games. Shadows are created by testing whether a pixel is visible from the light source, by comparing the pixel to a z-buffer or depth image of the light source's view, stored in the form of a texture. If you looked out from a source of light, all the objects you can see would appear in light. Anything behind those objects, however, would be in shadow. This is the basic principle used to create a shadow map. The light's view is rendered, storing the depth of every surface it sees (the shadow map). Next, the regular scene is rendered comparing the depth of every point drawn (as if it were being seen by the light, rather than the eye) to this depth map. This technique is less accurate than shadow volumes, but the shadow map can be a faster alternative depending on how much fill time is required for either technique in a particular application and therefore may be more suitable to real-time applications. In addition, shadow maps do not require the use of an additional stencil buffer and can be modified to produce shadows with a soft edge. Unlike shadow volumes, however, the accuracy of a shadow map is limited by its resolution. Rendering a shadowed scene involves two major drawing steps. The first produces the shadow map itself, and the second applies it to the scene. Depending on the implementation (and the number of lights), this may require two or more drawing passes. The first step renders the scene from the light's point of view. For a point light source, the view should be a perspective projection as wide as its desired angle of effect (it will be a sort of square spotlight). For directional light (e.g., that from the Sun), an orthographic projection should be used. From this rendering, the depth buffer is extracted and saved.

About this result
This page is automatically generated and may contain information that is not correct, complete, up-to-date, or relevant to your search query. The same applies to every other page on this website. Please make sure to verify the information with EPFL's official sources.
Related courses (2)
CS-341: Computer graphics
The students study and apply fundamental concepts and algorithms of computer graphics for rendering, geometry synthesis, and animation. They design and implement their own interactive graphics program
BIO-212: Biological chemistry I
Biochemistry is a key discipline for the Life Sciences. Biological Chemistry I and II are two tightly interconnected courses that aim to describe and understand in molecular terms the processes that m
Related lectures (25)
Shadows: Shadow Art and Computation
Explores shadow art creation, shadow computation in computer graphics, shadow mapping techniques, and challenges in achieving realistic shadows.
Protein Structure Analysis
Covers the analysis of protein structures using PyMOL software and the visualization of amino acid sequences and residues.
Photorealistic Rendering
Explores the challenges in achieving photorealistic rendering through ray tracing algorithms and discusses their limitations.
Show more
Related publications (38)

Privacy-Enhancing Optical Embeddings for Lensless Classification

Martin Vetterli, Eric Bezzam, Matthieu Martin Jean-André Simeoni

Lensless imaging can provide visual privacy due to the highly multiplexed characteristic of its measurements. However, this alone is a weak form of security, as various adversarial attacks can be designed to invert the one-to-many scene mapping of such cam ...
2022

Nanobridge Stencil Enabling High Resolution Arbitrarily Shaped Metallic Thin Films on Various Substrates

Jürgen Brugger, Giovanni Boero, Yi-Chiang Sun

Stencil lithography (SL), which uses a perforated membrane as a reusable shadow mask to locally add material patterns on substrates provides a simple but versatile approach for the fabrication of functional devices on a large variety of substrate materials ...
WILEY2022

Texture mapping and IFC material retrievement for virtual reality applications

Sergi Aguacil Moreno, Laurent Deschamps, Sebastian Duque Mahecha, Alexandre Denis Stoll

Most current software support the Industry Foundation Classes (IFC) transfer of Building Information Models (BIMs) to applications enabling Virtual Reality (VR) navigation (BuildingSMART, 2020; Kiviniemi, Tarandi, Karlshøj, Bell, and Karud, 2008; Poljanšek ...
2021
Show more
Related concepts (11)
Stencil buffer
A stencil buffer is an extra data buffer, in addition to the color buffer and Z-buffer, found on modern graphics hardware. The buffer is per pixel and works on integer values, usually with a depth of one byte per pixel. The Z-buffer and stencil buffer often share the same area in the RAM of the graphics hardware. In the simplest case, the stencil buffer is used to limit the area of rendering (stenciling). More advanced usage of the stencil buffer makes use of the strong connection between the Z-buffer and the stencil buffer in the rendering pipeline.
Glossary of computer graphics
This is a glossary of terms relating to computer graphics. For more general computer hardware terms, see glossary of computer hardware terms.
Subsurface scattering
Subsurface scattering (SSS), also known as subsurface light transport (SSLT), is a mechanism of light transport in which light that penetrates the surface of a translucent object is scattered by interacting with the material and exits the surface at a different point. The light will generally penetrate the surface and be reflected a number of times at irregular angles inside the material before passing back out of the material at a different angle than it would have had if it had been reflected directly off the surface.
Show more

Graph Chatbot

Chat with Graph Search

Ask any question about EPFL courses, lectures, exercises, research, news, etc. or try the example questions below.

DISCLAIMER: The Graph Chatbot is not programmed to provide explicit or categorical answers to your questions. Rather, it transforms your questions into API requests that are distributed across the various IT services officially administered by EPFL. Its purpose is solely to collect and recommend relevant references to content that you can explore to help you answer your questions.