Model Kind#
Model Kinds provide a way to organize and categorize Prims within the Stage hierarchy or “model hierarchy”. They can be useful for performing specific actions on a Stage such as identifying important Prims when traversing a Stage or advanced selection features when interacting with a Stage.
Setting a Prim’s Kind in the Stage#
You can assign a Prim’s Kind in the stage by right-clicking on the Prim and then using the Set Kind submenu.
Note
The validity of the hierarchy is not enforced in any way, and an incorrect Kind hierarchy will not function as intended. Therefore, it is the responsibility of the user to ensure the correctness of the Kind hierarchy to achieve the desired behavior.
Note
To enhance performance, USD internally stores and caches model hierarchy information, specifically to the component level. As you traverse deeper into the hierarchy the composition process requires more computational work.
Choosing the Kind Select Mode for the Viewport#
The Kind Select Mode determines which Prim, or Prims, are selected from the Model Kind hierarchy when clicking on a Prim in the Viewport.
The Assembly
Select Mode is a convenient way to select between models that may group many component models in a complex scene. This mode allows for manipulating these objects without the risk of inadvertently disassembling them into smaller components.
In a scene you may find various types of assemblies, such as vehicle assemblies, road assemblies, and tree assemblies. Each of these assemblies represents a distinct object within the scene. By utilizing the Assembly Kind Selection Mode, you can easily select and manipulate these objects while preserving their hierarchical structures. Alternatively, switching to other selection modes allows for finer selection control.
From the Toolbar right-click on the Select Mode button to expand the menu, shown here:
The following animations demonstrate the behavior of each Kind Selection Modes
Assembly Selection Mode#
This video demonstrates that clicking any Prim within the Assembly hierarchy will select Prim with the Assembly Kind and highlight all Prims under its hierarchy
Group Selection Mode#
When using Group Selection Mode clicking any Prim within a Group hierarchy will select Prim with the Group Kind and highlight all Prims under its hierarchy. Also, notice the Assembly Prim will not be selected/highlighted
Note
If no Group Kind exists in the hierarchy, it will select an Assembly since Assembly inherits from Group.
Component Selection Mode#
Component Selection Mode has similar behavior as in the previous modes, but targeting Component Kind Prims.
Subcomponent Selection Mode#
Subcomponent Selection Mode has similar behavior as in the previous modes, but targeting Subcomponent Kind Prims.
All Model Type Selection Mode#
This mode selects any Prim with all Kind types except for Subcomponent. This is because a Subcomponent isn’t considered a Model type. If you click on a Subcomponent it will select the Component in belongs to.
A Real World Example: Vehicle Assembly#
The entire car is an
Assembly
The major parts of the car are
Groups
The Suspension
Group
contains four sets of wheels with their attaching hardware, which areComponents
The Wheels are
Subcomponents
of their suspension attachmentComponent
.
The following animation shows this hierarchy and how changing the Select Mode affects which Prims are selected when clicking on the Wheel.
Notice that clicking on the Wheel Prim in the viewport, the selected Prim will be the ancestor Prim that has the same Kind Type assigned as the Select Mode.
For example, when the Select Mode is Group
, clicking on the Wheel selects the Suspension Prim. This is because the Suspension Prim is assigned the Group
Kind and is an ancestor of the Wheel Prim.
Include Prims with no Kind#
This determines how Kinds affect selecting Prims. If it is checked then you can select any Prim in the Viewport. When this is unchecked you can only select Prims with a Kind assigned to it.
Expanding and Collapsing by Kind in the Stage#
When you right-click on a Prim from the Stage and choose to collapse or expand it to a specific Kind, the action has a cascading effect on the clicked Prim and all subsequent Prims within its hierarchy. This means that any Prim of the specified Kind type will have its hierarchy tree either collapsed or expanded accordingly.
This video illustrates several of these actions.