Ambient Occlusion

 

Scene rendered with ambient occlusion

 

Ambient occlusion is an approximation of global illumination that emulates the complex interactions between the diffuse inter-reflections of objects. While not physically accurate (for that use full global illumination), this shader is fast and produces a realistic effect.

The ambient occlusion shader essentially fires a number of rays in the upper hemisphere defined by the tangent plane of the shading point and returns the ratio of the hits divided by the total rays as a color. When the ratio of the ray hits/total rays = 0, the output is considered fully unoccluded or 'Bright' (with white color by default). When the ratio of the ray hits / total rays = 1, the output is considered fully occluded or 'Dark' (with black color by default). In between, there is a linear interpolation of the two values.

  

Ambient Occlusion attributes

Samples

Controls the number of rays that will be fired to compute the ray hits/total ratio. Increasing the number of samples will reduce noise and give a better quality result.


 

Spread 

Angular spread around the normal vector N, in the range [0,1], where 1 maps to 90 degrees (the full hemisphere). 1.0 is the most common value. Other values may produce results that are not useful.


White

When the ratio of the ray hits/total rays is zero usually the output is considered fully unoccluded or Bright.

The output color when the ratio of the ray hits/total rays is zero (fully unoccluded). 

It is possible to change the white attribute to a color other than white to achieve a specific look:

Black

The output color when the ratio of the ray hits/total rays is one (fully occluded). It is possible to change the black attribute to colors other than black for specific looks. This can be useful for tinting the color of a floor shadow for example:

FallOff

An exponential falloff rate for the occlusion along the ray distance. It is not compatible with semi-opaque surfaces hit by the occlusion rays.


Near Clip

The minimum occlusion distance that is sampled.


Far Clip

The maximum occlusion distance that is sampled.


 

Invert Normals

This attribute changes the direction of the rays being traced. When it is off the rays are traced outside of the surface. When it is on the rays are traced inside the surface.


The most common use for this is to simulate dirt or erosion, as corners and cracks will become darker. 

 

The example below shows a brick road with an ambient_occlesion pass (with invert_normals enabled) multiplied on top of the beauty render to add 'dirt' in-between the bricks.

Self Only

Only gathers occlusion against the same object.

 

Normal 

Outputs a normal vector that can be linked to normal parameters in ambocclambert and standard_surface shaders. 

Trace Set 

The string label defining the set of objects to be traced or avoided. Objects are labeled using the Arnold Parameters Tag property.

Inclusive

If on, the tracing works in inclusive mode, else in exclusive, as described above.  

 

  • No labels