|On this page|
USD collections can specify their contents with a combination of "includes" and "excludes". The contents of the collection is the prims that match the includes and don’t match any excludes. This lets you sometimes write a broad "include", and then "carve out" the prims you don’t want with "excludes".
By default, this node does not show UI for exclude rules. Turn on Add excludes to show another multi-parm for creating exclude rules.
This node can match prims to include/exclude using a variety of methods. See the Target method parameter.
The multi-parm instances are combined by union, so a primitive that matches any of the conditions is put in the set (whether for inclusion or exclusion).
In VEX snippets, you can use
@variable names containing colons (
:). This makes it easier to automatically bind certain USD attribute names (for example
i@primvars:foo). (These names are not normally legal in names in VEX source code. The node automatically encodes these kinds of names when used in a snippet.)
The primitive to author the collection attribute on.
The name of the collection to create/edit.
Whether to include descendants of selected prims in the collection.
Only paths in the includes (and not in the excludes) belong to the collection. (
All the prims at or below the includess (and not under the excludes) belong to the collection. (
Expand Primitives and Properties
Like "Expand Primitives", but also includes all properties on all matched prims.
According to the Pixar documentation: "We're still not quite sure what the use cases are for this, but you can use it to capture a whole lot of UsdObjects very concisely.""
Create Primitive If Required
If the primitive at Primitive path doesn’t exist, the node will create it. (The node creates a node with no defined Type.)
Allow Instance Proxies in Collection
Instance proxies are prims under instanceable primitives. Since they are inside instances, they are not editable, so it usually doesn’t make sense to add them to collections.
However in some cases, such as material binding, it is possible to refer to instance proxy prims. In those limited cases, it may be useful to be able to put instance proxy prims in collections. (Per-instance material bindings are not currently supported by the rendering framework, but they will be at some point.)
You can specify multiple rules for what prims to include. Set the number of include rules, or click the plus and minus buttons to add or remove rules.
How to select prims matched by this rule.
Match prims using primitive pattern syntax.
Match prims based on whether they are inside or intersect a bounding box.
Match prims of a certain type.
Match prims with a certain kind.
Match prims with a certain render purpose.
Evaluate a VEX snippet for every prim in the scene graph tree, and select prims where the VEX evaluates to a non-zero value.
Show another multi-parm for creating exclusion rules. Prims that match the exclude rules are subtracted from the list of prims that match the include rules to get the final collection contents.
You can specify multiple rules for what prims to exclude. Set the number of exclude rules, or click the plus and minus buttons to add or remove rules.