User guide

107
RiProceduralResolve
This is similar to MaterialResolve but for renderer procedurals, such as RenderMan or Arnold procedurals. It
looks for any locations with 'rendererProceduralAssign' attributes.
ConstraintResolve
This looks for any constraints defined at /root/world in 'globals.constraintList' and calculates the effects of any
constraint on the transforms of locations.
AttributeModifierResolve (resolveWithIds=all)
This resolves any Attribute Modifier plug-in that hasn't been resolved previously.
Normally when you inspect scene data in Katana's UI you see the results before the implicit resolvers are run. It's
only when you render that the implicit resolvers are added. If you want to see the effect of the implicit resolvers on
the scene data you can switch them on by clicking on the 'Toggle Scenegraph Implicit Resolvers' clapper-board icon
in the menu bar or at top right hand side of the Scene Graph, Attributes or Viewer tabs. It then glows orange and
a warning message is displayed to indicate that the implicit resolvers are now active in the UI.
For instance, if you switch the implicit resolvers on and view the attributes at a location that has an assigned material
you'll see the following:
There is now an attribute group called 'material' with a local copy of the assigned material.
Any material overrides have been applied to the shader parameter values.
The original materialAssign value has been removed.
Similarly any materialOverride attributes have been removed.
The values of materialAssign and materialOverride have been copied into info so that you can still inspect
them for reference, but they are no longer active.
Creating Your Own Resolvers
You can using AttributeScripts or custom Attribute Modifier plug-ins to create your own resolvers, including having
them run implicitly .
There are a number of modes available for when AttributeScripts and AttributeModifiers are executed. These are
controlled by the 'resolveIds' values in the attributes. For AttributeScripts there are 4 modes available from the UI:
immediate: the script is resolved immediately after being set in the node
during attribute modifier resolve: the script is resolved by the first AttributeModifierResolve node it
encounters, either directly in the node graph or by the i AttributeModifierResolve implicit resolver if the users
doesn't put any in.
during Katana look file resolve: the script is resolved during LookFileResolve when the changes from look files
are written back on to assets.
NOTE: The LookFileManager includes LookFileResolve nodes.
14 RESOLVERS | CREATING YOUR OWN RESOLVERS