All Topics  
Ambient occlusion

 
Ambient Occlusion

   Email Print
   Bookmark   Link






 

Ambient occlusion



 
 
Ambient occlusion is a shading method used in 3D computer graphics
3D computer graphics

3D computer graphics are graphics that use a Cartesian coordinate system#Three-dimensional coordinate system representation of geometric data that is stored in the computer for the purposes of performing calculations and rendering 2D images....
 which helps add realism to local reflection models by taking into account attenuation of light due to occlusion
Occlusion

Occlusion is a term indicating that the state of something, which is normally open, is now totally closed.* In medicine, the term is often used to refer to blood vessels, artery or veins which have become totally blocked to any blood flow....
. Ambient occlusion attempts to approximate the way light radiates in real life, especially off what are normally considered non-reflective surfaces, for example, in the way light through a small crack in the curtain in an otherwise darkened room can slightly illuminate the entire room, and not just the path of light passing through the crack itself.

Unlike local methods like Phong shading
Phong shading

Phong shading refers to a set of techniques in 3D computer graphics. Phong shading includes a model for the reflection of light from surfaces and a compatible method of estimating pixel colors by interpolation surface normals across rasterized polygons....
, ambient occlusion is a global method, meaning the illumination at each point is a function of other geometry in the scene.






Discussion
Ask a question about 'Ambient occlusion'
Start a new discussion about 'Ambient occlusion'
Answer questions from other users
Full Discussion Forum



Encyclopedia


Ambient occlusion is a shading method used in 3D computer graphics
3D computer graphics

3D computer graphics are graphics that use a Cartesian coordinate system#Three-dimensional coordinate system representation of geometric data that is stored in the computer for the purposes of performing calculations and rendering 2D images....
 which helps add realism to local reflection models by taking into account attenuation of light due to occlusion
Occlusion

Occlusion is a term indicating that the state of something, which is normally open, is now totally closed.* In medicine, the term is often used to refer to blood vessels, artery or veins which have become totally blocked to any blood flow....
. Ambient occlusion attempts to approximate the way light radiates in real life, especially off what are normally considered non-reflective surfaces, for example, in the way light through a small crack in the curtain in an otherwise darkened room can slightly illuminate the entire room, and not just the path of light passing through the crack itself.

Unlike local methods like Phong shading
Phong shading

Phong shading refers to a set of techniques in 3D computer graphics. Phong shading includes a model for the reflection of light from surfaces and a compatible method of estimating pixel colors by interpolation surface normals across rasterized polygons....
, ambient occlusion is a global method, meaning the illumination at each point is a function of other geometry in the scene. However, it is a very crude approximation to full global illumination
Global illumination

Global illumination is a general name for a group of algorithms used in 3D computer graphics that are meant to add more realistic lighting to 3D scenes....
. The soft appearance achieved by ambient occlusion alone is similar to the way an object appears on an overcast day.

Ambient occlusion is most often calculated by casting rays in every direction from the surface. Rays which reach the background or “sky” increase the brightness of the surface, whereas a ray which hits any other object contributes no illumination. As a result, points surrounded by a large amount of geometry are rendered dark, whereas points with little geometry on the visible hemisphere appear light.

Ambient occlusion is related to accessibility shading, which determines appearance based on how easy it is for a surface to be touched by various elements (e.g., dirt, light, etc.). It has been popularized in production animation due to its relative simplicity and efficiency. In the industry, ambient occlusion is often referred to as "sky light."

The ambient occlusion shading model has the nice property of offering a better perception of the 3d shape of the displayed objects. This was shown in a paper where the authors report the results of perceptual experiments showing that depth discrimination under diffuse uniform sky lighting is superior to that predicted by a direct lighting model.

Aocclude Insectambient
Aocclude Insectdiffuse
Aocclude Insectcombined


The occlusion at a point on a surface with normal can be computed by integrating the visibility function over the hemisphere with respect to projected solid angle:

Aocclude Hemisphere






where is the visibility function at , defined to be zero if is occluded in the direction and one otherwise. A variety of techniques are used to approximate this integral in practice: perhaps the most straightforward way is to use the Monte Carlo method
Monte Carlo method

Monte Carlo methods are a class of computational algorithms that rely on repeated random sampling to compute their results. Monte Carlo methods are often used when computer simulation physics and mathematics systems....
 by casting rays from the point p and testing for intersection with other scene geometry (i.e., ray casting
Ray casting

Ray casting is the use of ray-surface intersection tests to solve a variety of problems in computer graphics. The term was first used in computer graphics in a 1982 paper by Scott Roth to describe a method for rendering Constructive solid geometry models....
). Another approach (more suited to hardware acceleration) is to render the view from by rasterizing black geometry against a white background and taking the (cosine-weighted) average of rasterized fragments. This approach is an example of a "gathering" or "inside-out" approach, whereas other algorithms (such as depth-map ambient occlusion) employ "scattering" or "outside-in" techniques.

In addition to the ambient occlusion value, a "bent normal" vector is often generated, which points in the average direction of unoccluded samples. The bent normal can be used to look up incident radiance
Radiance

Radiance and spectral radiance are radiometry measures that describe the amount of light that passes through or is emitted from a particular area, and falls within a given solid angle in a specified direction....
 from an environment map to approximate image-based lighting. However, there are some situations in which the direction of the bent normal is a misrepresentation of the dominant direction of illumination, e.g.,

Aocclude Bentnormal


See also


  • Global illumination
    Global illumination

    Global illumination is a general name for a group of algorithms used in 3D computer graphics that are meant to add more realistic lighting to 3D scenes....
  • Photon mapping
    Photon mapping

    In computer graphics, photon mapping is a two-pass global illumination algorithm developed by Henrik Wann Jensen that solves the rendering equation....
  • Radiosity
    Radiosity

    Radiosity is a global illumination algorithm used in 3D computer graphics rendering . Radiosity is an application of the finite element method to solving the rendering equation for scenes with purely diffuse surfaces....
  • Ray tracing
  • Reflection Occlusion
  • Screen Space Ambient Occlusion
    Screen Space Ambient Occlusion

    Screen Space Ambient Occlusion is a rendering technique for efficiently approximating the well-known computer graphics ambient occlusion effect in real-time....


External links

  • — real-time ambient occlusion using cube maps
  • real-time ambient occlusion using volume textures
  • a real time self ambient occlusion method from Nvidia's GPU Gems 2 book
  • an open source tool for computing ambient occlusion
  • A free normal mapper/ambient occlusion baking application