Hardware accelerated ambient occlusion techniques on GPUs

April 15, 2007 at 3:12 pm (Papers)

image from the paper

This paper has gotten the most attention from me from the limited time I’ve had to look through I3D papers. It’s not revolutionary or difficult to understand, but it seems fairly practical. The paper describes two methods. An image-based technique (i.e. performed on a 2D image of the scene, independent of geometric models/surfaces/media) for high-frequency ambient occlusion. Here, high-frequency refers to ambient occlusion caused by local surfaces to a point on a surface. A second technique addresses ambient occlusion on a global scale.

Image-based technique summary:

Each texel in a rendered depth map of a scene is represented as a sphere with a radius proportional to the depth in the scene. To find the ambient occlusion for each texel, sample some stochastic pattern in the neighbohood around the texel in question, calculating the area of the spherical cap subtended by the neighbor sphere (see Figure 3 in the paper). This calculation is used by many real-time occlusion techniques (see my other entry here )

Object-space technique summary:

For non-local ambient occlusion (inter-object occlusion, etc.), each object is represented as spheres. This setup is similar to the “Real-time Soft Shadows in Dynamic Scenes using Spherical Harmonic Exponentiation” paper at SIGGRAPH06. To calculate the ambient occlusion, an image-space technique is performed. A billboard is drawn at each sphere in screen space and the amount of occlusion of each pixel within that quad is increased by an amount based exponentially on the distance from the center of the quad. After performing this operation on all representative spheres in the scene, you have a rough approximation of the ambient occlusion.

I think these methods are certainly useful, and there are probably lots of small improvements that could be made in implementation that could improve performance. It may be more practical to use the image-based technique and not the global technique; It seems that the major bottle neck is the global technique. One improvement to the image-based technique would be to use an array of constants instead of a 1D texture lookup to find offsets for neighbors. Unnecessary texture fetches are bad.. especially dependent ones.

Another thing to look at might be optimizing the generation of the representative spheres (less = good) as in Wang et al.’s “Variational sphere set approximation for solid objects” paper and/or using low detail representations for distant objects. You could also construct the billboards used in the Geometry Shader from skeleton/medial axis vertices.

Perumaal Shanmugam’s website

Advertisements

5 Comments

  1. Image-Based Proxy Accumulation for Real-Time Soft Global Illumination « Level of Detail said,

    […] technique in the “Accelerated Ambient Occlusion Techniques on GPUs” paper I’ve mentioned before, though Sloan’s technique seems to be a little more careful in conserving energy, […]

  2. 2007: The year SSAO broke « Level of Detail said,

    […] of my very first posts on this blog discussed the image space ambient occlusion paper by Shanmugam et al. That post has […]

  3. level of detail » Blog Archive » 2007: The year SSAO broke said,

    […] of my very first posts on this blog discussed the image space ambient occlusion paper by Shanmugam et al. That post has […]

  4. Anonymous said,

    […] […]

  5. Image-Based Proxy Accumulation for Real-Time Soft Global IlluminationJeremy Shopf said,

    […] technique in the “Accelerated Ambient Occlusion Techniques on GPUs” paper I’ve mentioned before, though Sloan’s technique seems to be a little more careful in conserving energy, […]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: