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


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:



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:


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.



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.


Near Clip 

The minimum occlusion distance that is sampled.


Far Clip 

The maximum occlusion distance that is sampled.


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


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.


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

Self Only 

Only gathers occlusion against the same object.


Trace Set 

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

In the example below, the spheres and the torus have their Trace Set set in their Arnold Properties (General Properties rollup), so they can be included/excluded when traced by Ambient Occlusion.

Ambient occlusion excluded from Torus as 'the_sphere' is set in the shader



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

trace_set assigned to plane


  • No labels
© 2020-2021 Autodesk. All Rights Reserved / website terms / privacy/cookies / ccpa settings