Ops and Proxies¶
Deferred Ops¶
The effect of certain nodes and operations can be deferred until render time.
This is done by adding an ops
attribute group to the target scene graph
location, specifying the operations to run. Nodes that support deferred
evaluation include OpScript and GenericOp. Deferred
operations are run by the OpResolve node/op, which is part of the
implicit resolver chain.
Attribute | Description |
---|---|
group ops.<modifier> |
A group specifying a single Op to run. The modifier name is user-chosen and has no special meaning. |
string ops.<modifier>.opType |
The type of Op to run. |
group ops.<modifier>.opArgs |
The arguments to the Op. Varies by Op type. |
float ops.<modifier>.opArgs.system.timeSlice.currentTime
float ops.<modifier>.opArgs.system.timeSlice.shutterOpen
float ops.<modifier>.opArgs.system.timeSlice.shutterClose
int ops.<modifier>.opArgs.system.timeSlice.numSamples |
Referred to as System Op Args, these arguments are used by some Ops. |
string[] ops.<modifier>.resolveIds |
List of resolve IDs. These are arbitrary string tags that are matched
against the resolve IDs passed to OpResolve. Two resolve
IDs - lookfileresolve and implicit_preprocess - are processed
at the beginning of the implicit resolver chain. |
int ops.<modifier>.recursiveEnable |
If 1 , the deferred Op is also run against descendant locations.
When this attribute is encountered at a descendant location with a
value of 0 , recursion does not continue below that location. |
Deferred Material Ops¶
Ops can also be run at material resolve time. The attribute convention is the
same as above, except that ops are nested under a material.ops
group,
rather than ops
.
Viewer Proxy Ops¶
A similar convention can also be used to specify viewer proxies for scene graph locations.
Attribute | Description |
---|---|
int proxies.viewer.currentFrame
int proxies.viewer.firstFrame
int proxies.viewer.lastFrame |
Sets the frame range for which the proxy is active. |
int proxies.viewer.static |
If set to 1 , the proxy is considered non-animated. |
group proxies.viewer.<modifier> |
A group specifying a single Op to use for a proxy. See above for further details. |