Ambient occlusion, abbreviated as AO, is a technique that adds visual realism to the image without being physically correct. The ambient occlusion result can be used to darken concave areas, which human eye perceives as indirect illumination shadows, or contact shadows. The advantage of ambient occlusion is its computational speed. As it does not require any shading and may be computed with very short rays, the performance may be significantly higher than for final gathering.
The ambient occlusion is enabled by default, but no actual computations will happen until requested by further settings or by shaders. The ambient occlusion cache is set off by default. In this mode, only shaders which call for ambient occlusion values will initiate computation on demand. If no such shaders exist in the scene, there is no overhead compared to the rendering of scenes with ambient occlusion turned off. In case the ambient occlusion caching is enabled then mental ray will perform computations before rendering starts, to fill the cache, and re-generate its content in every frame of an animation.
The global defaults for ambient occlusion settings can be specified as scene options or on the mental ray command line. Most of these values can be overwritten by a shader.
The ambient occlusion caching may be enabled
for the current rendering to gain overall speed. In this case, several passes
will be computed. In the first pass, some ambient occlusion points are created
on a coarse grid. Subsequent passes refine the grid adaptively. The grid layout
is derived from the current view so that grid points projected into screen
space align with the pixels in the final image. The density of the grid is
determined by the
cache density setting, which
specifies the upper bound for the number of ambient occlusion points per pixel.
Increasing the image resolution without adjusting the density will indirectly
increase the size of the cache to retain quality. During tile rendering,
ambient occlusion values are interpolated from several ambient occlusion points
closest to the lookup location. The number of points to be used for
interpolation determines the smoothness of the result, and can be adjusted
cache points setting.
Modern GPUs provide massively parallel compute capabilities that can be used to accelerate ambient occlusion dramatically. mental ray can take advantage of a capable NVIDIA GPU in the ambient occlusion GPU mode. Once enabled, the AO calculation is fully executed on the graphics hardware independently of any CPU rendering that can run simultaneously. Since no shaders are involved, the quality of this AO pass is determined only by global scene options or on the command line of the standalone mental ray.
Copyright © 1986, 2013 NVIDIA Corporation