Houdini 20.5 Character KineFX

Managing character controls with selection sets

A tree view of controls, selections, and selection sets for the animate state. Allows management of control selection and visibility.

On this page
This feature is still under development. The current functionality is unfinished and subject to change, and may have thin or no documentation. Please bear this in mind when using it.

Selection sets are used to organize controls into groups, or sets, in the animate state. These sets can then be used to select, hide, pin, and isolate groups of controls. Selection sets are only displayed when you are in the animate state.

Use selection sets to manipulate groups of controls

Selection sets are stored with the geometry when you exit the animate state. When you re-enter the animate state, you will see the selection sets you defined earlier.

Selection sets can be managed either in its own pane, or in a HUD window that is embedded in the animate state:

Selection sets pane

The selection sets pane offers the full functionality of working with and managing selection sets, including options for importing, mirroring, and editing sets, as well as the ability to customize the display of the pane.

To create a selection sets pane tab:

  1. Click the New Tab icon at the top of a pane.

  2. Choose New Pane Tab Type ▸ Animation ▸ APEX Selection Sets.

Selection sets HUD

A selection sets HUD window is automatically created and displayed in the viewport when you enter the animate state. The HUD offers a more streamlined selection of options for working with and managing selection sets within the viewport. There are also slight differences in the placement of icons between the HUD and the selection sets pane.

Selection sets structure

There are three top-level categories of selection sets:

User-defined selection sets

Users can create sets from a selected group of controls.

Current Selection

A special set that contains the currently selected controls in the animate state. Users cannot make changes to this set.

All Controls

A special set that contains all the controls in the current scene. Users cannot make changes to this set.

Selection sets are organized in a tree structure with a hierarchy of controls for each character in the set:

  • At the top level is the selection set

  • Under the selection set is the character

  • Under the character is the rig

  • Under the rig are the controls in the rig

To the right of each item in the tree structure is a number that indicates the number of controls in the item’s subtree. If the name of the item contains a pattern, this number represents the number of controls matched by the pattern, and an additional descriptor, PATTERN, is appended after the number. For example, a pattern that matches 10 controls in a rig could be displayed in the tree structure as: * 10, PATTERN.

Selection set icons

In the following table, an item is a character, rig, or control in the selection set tree structure.

Icon

Functionality

User-defined sets

Currently selected controls

Character

Character is visible, or all characters in the set are visible

Some of the characters in the set are visible

Character is hidden, or all characters in the set are hidden

Rig

Control

Control is visible, or all controls in the group are visible

Some of the controls in the group are visible

Control is hidden, or all controls in the group are hidden

Icon

Functionality

Primary control - the control on which the transform handle is placed

Item is isolated

Some of the items in the group are isolated

The isolating functionality is currently disabled, but when isolating is enabled, this item is isolated.

Control is selected, or all controls in the group are selected

Some of the controls in the group are selected

Control is not selected, or none of the controls in the group are selected

Item is pinned

Some of the items in the group are pinned

Item is un-pinned, or all items in the group are un-pinned

Creating and modifying sets

To...Do this

Create a set from a selection of controls

  1. Select the controls you want to add to a new set.

  2. In the selection sets pane, click the Create Set from Current Selection button at the top menu bar.

    or

    click anywhere in the selection sets tree structure, and choose Create Set from Selected.

    or

    In the selection sets pane, choose Edit ▸ Create Selection Set.

Create an empty set

click anywhere in the selection sets tree structure, and choose Create Empty Set.

or

In the selection sets pane, choose Edit ▸ Create Empty Set.

Create a nested selection set

Drag and drop a set into another set.

or

  1. Select the controls you want to add to a new set.

  2. click the set you want to put the new set under, and choose Create Nested Set from Selected.

Reorganize the tree structure

Drag and drop sets within the tree structure.

Add or remove controls from a set

  1. Select the controls you want to add or remove.

  2. click the set you want to add or remove the controls from, and choose Add Selected to Set or Remove Selected from Set.

Remove an item from a set

In the selection sets HUD, click the item and choose Delete Item.

Remove a set

click the set and choose Delete Set.

or

  1. In the selection sets pane, select the set(s) you want to remove.

  2. Choose Edit ▸ Delete Selected Sets.

Remove all sets

In the selection sets pane, choose Edit ▸ Clear Sets.

Duplicate a set

click the set and choose Duplicate Set.

or

  1. In the selection sets pane, select the set(s) you want to duplicate.

  2. Choose Edit ▸ Duplicate Selected Sets.

The duplicate set is named <original_set_name>_copy.

Rename a set

  1. Double-click the set name.

  2. Enter the new name.

  3. Press Enter.

or

  1. click the set and choose Rename Set.

  2. Enter the new name.

  3. Press Enter.

Rename sets using a pattern

  1. In the selection sets pane, select the sets you want to rename.

  2. Choose Edit ▸ Pattern Rename Selected Sets.

  3. In the From Pattern field, enter the set name pattern you want to change.

  4. In the To Pattern field, enter the pattern you want to change the set names to.

  5. Click OK.

For example, if the current set names are set1 and set2, and you have From Pattern = set*, and To Pattern = SET*, then the sets will be renamed to SET1 and SET2.

Color a set

  1. Select the set(s) you want to color.

  2. click the set(s) and choose Set Color(s).

  3. Choose a color from the palette.

or

  1. In the selection sets pane, select the set(s) you want to color.

  2. Click the button and choose a color from the palette.

or

  1. In the selection sets pane, select the set(s) you want to color.

  2. Choose Edit ▸ Set Colors for Selected Sets.

  3. Choose a color from the palette.

Clear the color on a set

  1. Select the set(s).

  2. click the set(s) and choose Clear Color(s).

or

  1. In the selection sets pane, select the set(s).

  2. Choose Edit ▸ Clear Colors for Selected Sets.

Working with selection set items

With selection sets, you can select, display, pin, and isolate groups of controls. You also have the option to show or hide full character geometries.

In the following table, an item is a character, rig, or control in the selection set tree structure.

To...Do this

Select or deselect items

Select the item in the tree structure.

or

In the selection sets pane, click the or icon.

or

click on an item, and choose Select Controls or De-Select Controls.

or

In the selection sets pane, select the item, and choose Manage ▸ Select Selected Sets or De-Select Selected Sets.

Show or hide controls

Click the or icon.

or

click on an item, and choose Show Controls or Hide Controls.

or

In the selection sets pane, select the item, and choose Manage ▸ Show Selected Sets or Hide Selected Sets.

Note

When the isolating functionality is enabled, the showing/hiding of controls is disabled (the show/hide icons in the selection sets pane are greyed out).

Change the control that has its handle displayed when the set is selected

In the selection sets pane, click the control, and choose Make Primary Control. The icon beside the control name will change to .

Isolate or de-isolate items

Isolating controls hides all other controls except for the selected controls.

In the selection sets HUD, Ctrl+Shift click on the or icon to isolate the item. A icon will appear beside the item name. To de-isolate the item, click on the icon.

or

In the selection sets pane, click in the Isolate Controls column next to the set.

or

click on an item, and choose Isolate Controls or De-Isolate Controls.

or

In the selection sets pane, select the item, and choose Manage ▸ Isolate Selected Sets or De-Isolate Selected Sets.

Enable/Disable the isolating functionality

In the selection sets HUD, click the tree structure, and choose Enable Isolating or Disable Isolating. When isolating is enabled, the isolating icons (/) appear beside the item name. When isolating is disabled or no items are isolated, the show/hide icons (/) appear beside the item name.

or

In the selection sets pane, click or on the top toolbar. indicates that isolating is enabled. indicates that isolating is disabled or no items are isolated. When isolating is enabled, the showing/hiding of controls is disabled (the show/hide icons in the selection sets pane are greyed out).

Clear the isolate state of all sets

click the tree structure and choose Clear Isolated Controls.

or

In the selection sets pane, ⌃ Ctrl click the icon at the top of the Isolate Controls column.

or

In the selection sets pane, choose Manage ▸ Clear All Isolated.

Pin or unpin items

Pinned items remain in the channel list. When you set a keyframe, you are keying all the items that are pinned.

Click the or icon.

or

click on an item, and choose Pin Controls or Un-Pin Controls.

or

In the selection sets pane, select an item, and choose Manage ▸ Pin Selected Sets or Un-Pin Selected Sets.

Clear all pinned sets

In the selection sets pane, ⌃ Ctrl click the icon at the top of the Pin/Unpin Controls column.

or

In the selection sets pane, choose Manage ▸ Un-Pin All.

Show or hide characters

Click the or icon.

or

click on a character in the selection sets tree structure, and choose Show Characters or Hide Characters.

or

click anywhere in the selection sets tree structure, and choose Show All Characters.

or

In the selection sets pane, choose Manage ▸ Show All Characters.

Fully expand or collapse a subtree

Hold ⇧ Shift and click on the or icon before the item name.

or

click on an item, and choose Expand Sub Tree or Collapse Sub Tree.

or

In the selection sets pane, select an item, and choose Manage ▸ Recursively Expand Selected Sets or Recursively Collapse Selected Sets.

Show only selection set items with a particular name

At the bottom of the selection sets pane, turn on Filter, and enter a pattern for filtering the item names. Only sets with item names that match the pattern are displayed in the selection sets tree structure.

Mirroring sets

The mirroring operation allows you to create a set for one side of the character that mirrors an existing set on the other side of the character. For example, if you have a set L_set that contains the control L_arm, the mirroring operation allows you to quickly create another set called R_set that contains control R_arm.

Specify how mirrored sets are named

To specify how mirrored sets are named in the mirroring operation:

  1. Select Mirror ▸ Edit Set Name Remap Patterns.

  2. Change Left Set Pattern and Right Set Pattern to how you want to mirror the set names.

  3. Click OK.

Specify how mirrored controls are named

By default, Mirror ▸ Use Patterns from Rig is turned on, which specifies that mirrored controls are to be named based on the mirror pattern on the rig. The mirror pattern is stored in the mirror_pattern detail attribute on the character rig. The following is an example of the mirror_pattern attribute:

"mirror_pattern":{
    "left_pattern":"*_l",
    "right_pattern":"*_r"

See mirror pose in the animate state for more information on how to set the mirror pattern on a rig using the APEX Configure Character SOP.

To override the rig mirror pattern and explicitly set how mirrored controls are named:

  1. In the selection sets pane, turn off Mirror ▸ Use Patterns from Rig.

  2. Select Mirror ▸ Edit Mirror Remap Patterns.

  3. Change Left Pattern and Right Pattern to how you want to mirror the control names.

  4. Click OK.

To...Do this

Mirror a set

  1. Select the set(s) to mirror.

  2. click the selection and choose Create Mirror Set(s).

or

  1. In the selection sets pane, select the set(s).

  2. Choose Mirror ▸ Mirror Selected Sets.

If the original set name matches the set pattern in Manage ▸ Edit Set Name Remap Patterns, the mirrored set will be pattern-renamed to the opposite side.

If the original set name does not match the set pattern in Manage ▸ Edit Set Name Remap Patterns, the mirrored set will be named <original_set_name>_mirror.

Change the pattern used to name mirrored sets

  1. In the selection sets pane, choose Mirror ▸ Edit Set Name Remap Patterns.

  2. Change Left Set Pattern and Right Set Pattern to how you want to mirror the set names.

  3. Click OK.

Change the pattern used to name mirrored controls

  1. In the selection sets pane, choose Mirror ▸ Edit Mirror Remap Patterns.

  2. Change Left Pattern and Right Pattern to how you want to mirror the control names.

  3. Click OK.

Explicitly set the pattern for naming mirrored controls instead of using the mirror pattern in the rig

  1. In the selection sets pane, turn off Mirror ▸ Use Patterns from Rig.

  2. Set the pattern used for naming mirrored controls in Mirror ▸ Edit Mirror Remap Patterns.

Working with patterns

Selection sets support the use of patterns in character, rig, and control names. Patterns can allow you to apply a group of controls to any number of characters in the scene, which is useful when creating or importing generic sets made for multiple characters. You can also use patterns to specify that a set includes all the controls in a character.

Patterns can be expanded back to the actual names of the character, rig, or control. Expanding a pattern is essentially the reverse operation of defining a pattern.

In the following table, an item is a character, rig, or control in the selection set tree structure.

To...Do this

Change a pattern for an item

  1. Expand the selection set and double-click the name of the character, rig, or control within the set.

  2. Type in the desired pattern, for example, *.char.

  3. Press Enter.

For example:

  • If you rename the character from mychar.char to *.char, the subtree underneath the character applies to every character matching the pattern.

  • If you rename a control to wrist_*, the control matches both wrist_l and wrist_r.

The number beside the item name is the number of controls matched by the set, and an additional descriptor, PATTERN, is appended after the number.

Expand all patterns in a set

Replaces all the patterns with the character/control names.

click a set and turn on Expand Patterns.

or

In the selection sets pane, select a set, and choose Edit ▸ Expand Patterns in Selected Sets.

Apply a set to all characters

click a set and choose Apply to All Characters.

or

In the selection sets pane, select a set, and choose Edit ▸ Apply to All Characters.

A hierarchy for each character will appear under the set.

If Edit ▸ Separate Sets for Each Character when Applying is turned on, a separate set will be created for each character.

Apply a set to selected characters

  1. click a set and choose Select Characters to Apply to.

    or

    In the selection sets pane, select a set, and choose Edit ▸ Select Characters to Apply to.

  2. Choose the character(s) and click Accept.

A hierarchy for each character will appear under the set.

If Edit ▸ Separate Sets for Each Character when Applying is turned on, a separate set will be created for each character.

Create a separate set for each character when expanding a pattern

click a set and choose Make Separate Sets for Each Character. A separate set is created for each character.

or

In the selection sets pane, turn on Edit ▸ Separate Sets for Each Character when Applying. When applying a set to all or selected characters (using Apply to All Characters or Select Characters to Apply to), a separate set is created for each character.

Remove the original set when creating separating sets for characters

This option is used in conjuction with making separate sets for each character when expanding a pattern.

Turn on Edit ▸ Remove Original Set when Separating Sets for Characters.

The original set will be deleted after creating the new sets for each character.

Turn an item name into a wildcard pattern

click the item and choose Generalize Item.

For characters, the character name changes to *.char, which means that the controls in the set apply to all characters.

For controls, the control name changes to *, which means that all the controls in the character now belong to the set.

Importing and exporting sets

Selection sets are generally stored in an attribute on the scene’s geometry for the animate state. There is also the option to import sets to and from files on disk, as well as from another node in the scene that contains geometry with the correct selection set attribute.

To...Do this

Export all sets to a file

  1. In the selection sets pane, choose File ▸ Export Sets to File.

  2. Choose the file to save to.

  3. Click Accept.

Export selected sets to a file

  1. In the selection sets pane, select the set(s) you want to export.

  2. Choose File ▸ Export Selected Sets to File.

  3. Choose the file to save to.

  4. Click Accept.

Import sets from a file

  1. In the selection sets pane, choose File ▸ Import Sets from File.

  2. Choose the file to import from.

  3. Click Accept.

Import sets from a node

  1. In the selection sets pane, choose File ▸ Import Sets from Node.

  2. Choose the node to import from.

  3. Click Accept.

KineFX

Preparing character inputs

Rigging with rig components

Rigging with APEX graphs

Building graphs with APEX Script

Animating in the viewport

Technical Animation

Deformation

Animation Retargeting

Pre-H20

Panes

Appendix