...
Ops can be added as either renderTerminalOps or liveRenderTerminalOps. The format of the Ops within each type are the same, the only difference is when the Ops are evaluated by Katana.
renderTerminalOps
The "op" elements added here affect the scene as seen at render time.
liveRenderTerminalOps
The "op" elements here are added to the live render observer within the Katana process. If you need to manipulate the scene in any manner unique to live render updates, you may do this here.
An "op" element has two required properties:
- type a string containing the name of a registered Op type = insertWhen a string indicating where among the terminal ops added by RfK itself the op should be inserted. See table below for a list of valid string values.
An "op" element may have these optional properties:
- needsSystemArgs values of "yes", "true" or "1" result in the "system" GroupAttribute being added to the Op's arguments. This contains information about the current frame and shutter information.
An "op" element may also have a child element of type "attr". This is expected to be the XML serialization of an FnAttribute::GroupAttribute, which can be generated from Python or C++ via the attr's getXML() method.
Valid insertWhen Options
Option | Description |
---|---|
first | Before all other terminal Ops |
beforeVstructExpansion | Before virtual struct connections are expaned (i.e. before the Op PRManResolveVirtualStructConnections is called) |
afterVstructExpansion | After virtual struct connections are expaned (i.e. after the Op PRManResolveVirtualStructConnections is called) |
last | Append your Op after all others. |
...