It is possible to designate objects to be part of one or many trace sets. The trace_set shader marks specific rays with an inclusive or exclusive trace set. Both geometry and rays can be designated as trace sets:

  • A piece of geometry can have none or any number of trace sets.
  • A ray can optionally have one trace_set, and it can be exclusive or inclusive.

The way those two interact makes it possible to control visibility for specific rays:

  • A ray with no trace_set will hit all geometry.
  • A ray marked with an inclusive trace set will only hit geometry that has that trace_set.
  • A ray marked with an exclusive trace set will only see geometry that does NOT have that trace_set.
  • An empty trace set name means that the shape belongs to all sets. So to remove objects from, say reflections, one must assign a dummy set name.
  • The trace set name must be set before the ray is fired. For example, for "direct" reflections, the trace_set node must be connected to the "camera" rays in addition to the "reflection" one.

trace_set set to green for shader and plane object (inclusive: disabled).
A scene file can be downloaded here.

Trace Set Passthrough

The shader that gets called after setting the label.

Trace Set

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

Trace Set Inclusive

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

trace_set assigned to plane


Below is a shading network for a floor material that segregates shadow and specular rays into two different trace sets:

The sphere objects are then tagged to be part of the shadows or specular or both trace sets:

  • No labels
Privacy settings / Do not sell my personal information / Privacy/Cookies