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.

../../_images/kinds_assign_stage.png

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:

../../_images/kinds_select_type.png

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.

Watch Component Selection Mode Video

Subcomponent Selection Mode

Subcomponent Selection Mode has similar behavior as in the previous modes, but targeting Subcomponent Kind Prims.

Watch Subcomponent Selection Mode Video

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.

Watch All Model Type Selection Mode Video

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 are Components

  • The Wheels are Subcomponents of their suspension attachment Component.

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.