Houdini 22.0 Nodes Geometry nodes

APEX Configure Controls geometry node

Configures the look and behavior of controls on APEX rigs.

On this page
Since 20.0

This node allows you to configure the look and behavior of the controls on an APEX rig. The look can be influenced by pre-shipped control shapes or an external source of shapes.

See rigging a character for an example of configuring the look of controls using this node.

Parameters

Rig Source

The path to the rig graph in the packed character input (Character Stream input).

Skin Shape Source

The path to the skin shape in the packed character input (Character Stream input).

Guide Source

The path to the guide skeleton in the packed character input (Character Stream input). The guide skeleton can be used as a source of information to aid in building the rig.

Preview Selection Sets

When turned on, displays the selection sets created by this node.

Advanced Shape Settings

Create Missing Shape Names by Connectivity

When turned on, unnamed control shapes in your shape library are automatically assigned proper primitive names based on shape connectivity.

Use Lighting

When turned on, the controls use global lighting. When turned off, the control look is flat shaded.

General

Control Configs

The number of control configurations.

Control Config

When turned on, applies the control configurations in this section.

Control Group

The control(s) that are affected by the configurations in this section. The group pattern is based on the APEX path pattern syntax.

Use Shape Override

When turned on, sets the control shape. This parameter is not available when Use Skin Control is turned on.

Shape Override

The control shape to use for the controls in Control Group. The drop-down menu provides a list of pre-shipped control shapes. If a shape library is provided as the second input to this node, Shape Override can refer to one of the shapes in the shape library.

3dcross
ball
ball_wires
ballline_wires
blob
box
box_wires
boxcross_wires
boxplanes_wires
circle_plane
circle_wires
circleplanes_wires
cogwheel
cone
cross
cross_wires
crossplanes_wires
fk
ik
lineb
lineblob
loop
plane_wires
planecross_wires
planes_wires
rigvisualizer
rubber
sphere
sphere_m
star
torus
torusb
Use Shape Offset

When turned on, sets the transformation of the control shapes.

Mode

Defines if the transformation is applied as a pre- or post-multiplication of the current transformation.

Translate

The local translate offset applied to the control shapes.

Rotate

The local rotate offset applied to the control shapes.

Scale

The local scale offset applied to the control shapes.

Use Image

When turned on, turns an image into a clickable button for selecting the controls.

Path

The path to a .png image to use for the image control sprite of the control.

Note

It is recommended to use relative paths for the image paths, otherwise a machine-dependent absolute path may get baked into the control. For example, to ensure that the relative path is stored, use \$MYPATH/.../myimg.png instead of $MYPATH/.../myimg.png.

Use Pixel Size Min/Max

When turned on, the pixel size of the sprite is clamped at a minimum and maximum pixel value.

Pixel Size Min/Max

When Use Pixel Size Min/Max is turned on, this is the minimum and maximum pixel size the sprite is clamped at. Setting the minimum and maximum to the same value means that the image is not scaled with the distance to the camera.

Use Screen Space Position

When turned on, positions the image within the 2D positional space of the camera. When turned off, positions the image in world space.

Screen Space Pixel Size

When Use Screen Space Position is turned on, this is the pixel size of the image sprite in screen space.

Pixel Offset

The x and y pixel offset to the sprite’s pivot in screen space. In screen space, a position of (0, 0) places the image at the bottom left corner of the viewport.

Angle

The angle in degrees that the image is rotated.

Depth

The depth position of the current control. This is important for defining the draw order for overlapping sprites, especially for controls placed in screen space or controls with the same pivot.

Use Screen Clamp Position

When turned on, the control is always visible at the border of the screen even if the control pivot is outside the screen space.

Use Color

When turned on, sets the color for the controls.

Color

The color for the controls.

Use Skin Control

When turned on, adds a skin control for the character.

Prims

The primitives to use as the skin control.

Use Limits

When turned on, allows limits, such as transform limits, to be set on control parameters. These limits are enforced by the animate state in the viewport. See transform limits in the animate state for more information.

Parameter Limits

Limits a set of control parameters to a specified range. This can be helpful for ensuring that the anatomy or behavior of a character is not broken by its animation. The limits are stored on the TransformObject properties dictionary inside the rig.

There are two kinds of limits:

  • Locked limits are always enforced in the animate state. The only way to override locked limits is to modify the rig.

  • Soft limits can be suppressed via the Enforce Transform Limits option in the animate state settings.

Parm Name

The name of the control parameter to set limits on. Select the parameter value type from the drop-down menu. The available options are Float and Vector3.

Min

When turned on, sets the minimum soft limit value.

Max

When turned on, sets the maximum soft limit value.

Min Lock

When turned on, sets the minimum locked limit value.

Max Lock

When turned on, sets the maximum locked limit value.

Use Promote

When turned on, promotes the specified components of the controls.

Promote T

When turned on, promotes the translate component of the controls.

Promote R

When turned on, promotes the rotate component of the controls.

Promote S

When turned on, promotes the scale component of the controls.

Use Selection Sets

When turned on, allows you to add and modify selection sets for the controls. See creating selection sets for more information.

Set Path

The path to the selection set. In the drop-down menu to the right, select whether to Add, Remove, or Replace the controls in the selection set. You can also use the color chip to choose a color for the set.

Is Visible

When turned on, sets the controls in this selection set to be visible ().

Use Pivots

When turned on, sets the pivot rotate and pivot translate values of the control. This allows you to apply a different orientation for a control without changing anything else on the rig. When turned off, the pivot values are not applied to the control.

Pivot Rotate

The pivot’s rotation along the X, Y, and Z axes.

Pivot Translate

The pivot’s translation along the X, Y, and Z axes.

Rename

Rename

These parameters allow you to rename the controls on the rig.

Rename Guides

When turned on, renames the joints on the guide skeleton, Guide Source. This can be used to correct an incoming skeleton to match the new node name.

Rename Promoted Ports

When turned on, updates the promoted port names in the rig graph to match the new control names.

Renames

The number of groups of controls to rename. Renames are performed from top to bottom. Renames further down the list will overwrite the entries before it. Renames further down the list will also use any updated names, not the original names.

Group

The controls to rename. This parameter accepts APEX path patterns, so you can specify tags in this field, for example, #L_arm.

Use Pattern

When turned on, uses a pattern to rename the nodes. For example:

  • To rename hand_l to L_hand, set Find to *_l, and Replace to L_*.

  • To rename arm_l_ik to L_arm_ik, set Find to *_l_*, and Replace to L_*_*.

  • When using more than one *, the values are stored in an ordered list and can be recovered using an index, for example, *(0), *(1), etc. For example, to rename arm_l_ik to L_ik_arm, set Find to *_l_*, and Replace to L_*(1)_*(0).

Rename

When Use Pattern is turned off, this is the new name for the controls.

Find

When Use Pattern is turned on, this is the pattern to replace.

Replace

When Use Pattern is turned on, this pattern replaces the pattern in Find.

Prefix

The prefix to add to the new name.

Suffix

The suffix to add to the new name.

Joins With

The string used to join the Prefix and Suffix with the new name.

Padding

For non-zero values, appends a number with this many digits to the new name. For example, to rename pelvis, spine*, neck, and head to spine<number>:

  • Set Group to “pelvis spine* neck head”.

  • Set Rename to spine.

  • Setting Padding to 1 renames the controls to spine1, spine2, etc. Setting Padding to 3 renames the controls to spine001, spine002, etc.

Config Manager

The Config Manager builds an interactive, in-viewport picker into the rig. It creates a master picker control — drawn as an image sprite in the viewport (a icon by default) — that animators can click to show and hide groups of controls. For each entry in the Config Controls multiparm, a control group is turned into its own clickable picker button with a custom image, title, and color.

The picker is assembled from image-sprite controls, so it provides a compact, artist-friendly selection interface for posing and animating without having to search for individual controls in the viewport. The picker buttons can also toggle the level of detail (LOD) of the rig (the visibility of controls grouped into importance tiers) and the output geometry (shapes) that the rig displays and evaluates.

Enable

When turned on, builds the Config Manager picker into the rig. When turned off, none of the settings on this tab are applied.

Name

The name of the master manager control node created in the rig graph (the default is Main_Manager). A toggle parameter named <Name>_visibility is promoted on the rig to control the overall visibility of the picker.

Image

The path to the .png image sprite used to draw the master manager picker in the viewport.

Note

As with the other image parameters on this node, it is recommended to use relative paths (for example \$HFS/... rather than $HFS/...) so that a machine-dependent absolute path is not baked into the control. See the Path parameter in the Use Image section.

Parent

The control that the manager picker is parented to. The picker follows this control’s transform. The drop-down menu lists the promoted controls available on the rig.

Position

The local position offset of the manager picker relative to its Parent.

Size

The display scale of the master manager picker sprite.

Picker Size

The display scale of the config picker buttons and their level-of-detail sprites.

Level of Detail

When turned on, adds picker buttons that toggle the visibility of controls by level of detail.

The control level of detail is a tag on each control that ranks the control by importance. This is usually set by the rig component that creates it. LOD1 is the highest importance (for example, the main controls used to lay out the character), while LOD3 is the lowest (for example, controls used only for final tweaks). Clicking an LOD picker button shows or hides the controls carrying that tag, letting the animator declutter the viewport to see only the controls they need.

LOD1 Image

The sprite image for the picker button that toggles the controls of highest importance (LOD1).

LOD2 Image

The sprite image for the picker button that toggles the intermediate (LOD2) controls.

LOD3 Image

The sprite image for the picker button that toggles the controls of lowest importance (LOD3).

Shape Level Of Detail

When turned on, adds picker buttons that switch the output geometry (shapes) that the rig displays and evaluates, ranked by the same importance tiers as the control level of detail above.

Selecting a shape LOD picker button calls the animate state’s level-of-detail switch for the shapes matching the associated Shapes pattern. Only the currently selected level of detail is evaluated, so switching a heavy, high-detail LOD3 mesh down to a lightweight low-poly LOD1 mesh makes the overall character evaluate much faster.

LOD1 Image

The sprite image for the picker button that switches to the first shape level of detail.

Shapes

The output geometry shapes that are evaluated and displayed at the first shape level of detail. Separate multiple patterns with spaces.

LOD2 Image

The sprite image for the picker button that switches to the second shape level of detail.

Shapes

The output geometry shapes that are evaluated and displayed at the second shape level of detail, specified by a .shp path. Separate multiple patterns with spaces.

LOD3 Image

The sprite image for the picker button that switches to the third shape level of detail.

Shapes

The output geometry shapes that are evaluated and displayed at the third shape level of detail, specified by .shp path. Separate multiple patterns with spaces.

Config Controls

A list of control groups to expose as picker buttons under the manager. Each entry adds a clickable button that selects and toggles the visibility of its control group.

Enable

When turned on, this config entry is built into the picker. When turned off, the entry is skipped.

Config Control

The control group this picker button represents, specified using the APEX path pattern syntax. The drop-down menu lists the available *config subnets on the rig. The button selects and toggles the primary control of this group.

Color

The tint color applied to this config button’s picker sprite.

Show LODs

When turned on, this config button displays its level-of-detail shapes.

Img Path

The path to the .png image sprite used for this config picker button.

Title Img Path

The path to an optional .png image drawn as a title or label above this config button’s picker sprite.

Inputs

CharacterStream

The APEX character geometry to modify.

Shape Library

Packed or unpacked geometry primitives to use as control shapes for the rig graph. These primitives have name attributes, and are added as packed geometry to the character stream. The animate state can fetch these shapes from the character.

Outputs

CharacterStream

The modified APEX character geometry.

See also

Geometry nodes