Tag: Assorted

Assorted Notes about Ambient Occlusion by Greg Coombe

by put3d on ก.ย..27, 2009, under Article, Tutorial

Motivation

Ambient occlusion is a lighting technique used to give models a global illumination-like effect, as if it were lit from the entire hemisphere (rather than a point light). A set of visibility samples are collected from the hemisphere above a point, and a scalar “ambient occlusion” value is computed based on the percentage of unoccluded samples. For a nice overview of ambient occlusion, check out Steve Hill’s article in Gamastura. Some other very good ambient occlusion tutorials have been written by Zhang Jian, Bob Moyer, and Andrew Whitehurst.

Approaches

There are two basic approaches for computing ambient occlusion. The first is ray tracing; simply shoot out rays in uniform pattern across the hemisphere. The percentage of rays that hit geometry is divided by the total number of rays to get a scalar value. This could also be done with hardware rendering by placing a camera at every triangle and counting the percentage of the hemisphere that is visible. Since this requires computing occlusion at every triangle, this approach is in general O(N^2), although with efficiency structures (such as bounding volume hierarchies) it can be reduced to O(NlogN).

The second approach is an “outside-looking-in” approach. The model is rendered from a set of M random points on the sphere surrounding the model. The occlusion information is stored for each viewpoint, and averaged. The complexity of this approach is O(N*M), or O(MlogN) with efficiency structures. Since M is generally much smaller than N, this makes it interesting for realtime work. Since this is the approach I am interested in, let me explain the algorithm in more detail.

goto full Assorted Notes :

http://www.cs.unc.edu/~coombe/research/ao/

VN:F [1.9.3_1094]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.3_1094]
Rating: 0 (from 0 votes)
4 Comments :, , more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Visit our friends!

A few highly recommended friends...