Page tree

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.



The PxrUnified Integrator does not support separate diffuse and specular depth by default and these are ignored. Instead it has a unified max depth control or you may enable the option known as useTraceDepth in the integrator separately.

There are two main parameters per-object for deciding how much bounce will happen before a ray is terminated and the result is stored.


It might be useful to clamp the number of bounces allowed in the scene. Typically scenes have scattered specular and diffuse objects. Rarely do they all line up where you need to see clearly through many objects. As such you can still specify large trace depths but also define a maximum combination of the two. In these cases, you may get more of one or the other effect based on what type of object the renderer is rendering. In the above glass examples, you may exhaust your specular depth while some diffuse depth may not be visually important. So, in this case, we may set a Specular and Diffuse Max Depth to 5. We may only need the maximum of a single depth and not both, which would add to 10 total bounces.

For the PxrPathTracer we would use Max Path Length to define the maximum combination of bounces in total.

For the PxrVCM and PxrUnified there's a more unified Max Path Length that defines all paths to and from the light allowed in a single connected path. The maximum is 20 before it terminates in PxrVCM.

Per object trace depths.

Objects in a scene may be given local overrides to increase or decrease their trace depth settings. These are Max Diffuse Depth and Max Specular Depth. When using these attributes be sure the global Max Path Length as described above is sufficient or else it may stop tracing too soon if these local controls are raised too high. This does not apply to PxrUnified as it ignores Diffuse and Specular trace depth separation.