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.

The animate state is a viewer state that can display multiple characters in an animation scene and allow users to perform posing such as FK or IK for characters, interact with controls on characters, and add constraints between characters. Functionality like physics-based motion and ragdoll can also be applied to animation within the animate state.

To enter the animate state, select the APEX Scene Animate SOP in the network editor, turn on its display flag, and click Animate on the left toolbar.

Note

Only packed character elements can be displayed in the animate state. See the packed character format for information on how to prepare character data for the animate state.

Posing in the animate state

In the animate state, you can pose characters and set keyframes to perform animation. The transform handle in the animate state is used to select, manipulate, and transform characters and controls.

Hover over the viewport and press Y to cycle through the available transform handle modes.

Animate state handle modes (left to right): full transform mode, translate mode, rotate mode, scale mode, minimized mode

See the handle parameters window for options on configuring the look and functionality of the transform handle, and using handles for more information on the basic handle modes.

Transforming groups of controls

By default, when you select multiple controls and translate/rotate the active handle, the selected controls translate/rotate about their local axes.

On the other hand, holding ⌃ Ctrl + ⇧ Shift puts the handle in global transform mode:

  • When you select multiple controls, hold ⌃ Ctrl + ⇧ Shift, and translate the active handle, the selected controls translate in world space.

  • When you select multiple controls, hold ⌃ Ctrl + ⇧ Shift, and rotate the active handle, the selected controls rotate about the active handle.

The videos below show the difference between the default and ⌃ Ctrl + ⇧ Shift behaviors when translating and rotating a group of controls.

Default translation behavior
Translation when holding Ctrl+Shift
Default rotation behavior
Rotation when holding Ctrl+Shift

In global transform mode, it is easy to pose characters in a variety of configurations by translating and rotating groups of controls about the last selected pivot. This can be done without the use of constraints.

Rotating controls about the last selected pivot

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.

Use selection sets to manipulate groups of controls
To...Do this

Rotate about the last selected control

  1. Select the group of controls (or selection set) you want to rotate about a pivot control.

  2. Hold ⇧ Shift while selecting the pivot control.

  3. If necessary, change the handle mode to one that has rotation handles (press Y to cycle through the different handle modes, or press R to change the handle to rotate mode).

  4. Hold ⌃ Ctrl + ⇧ Shift and drag the rotate handles to rotate the group of controls about the pivot control.

Rotate about the last selected control

Adjust the transform component values (translate, rotate, scale) of a control

  1. Select a control.

  2. Press G to bring up the parameters HUD, which allows you to change the transform component values of the selected control. You can also use the value ladder to change the component values.

Change the handle alignment

Press M to cycle through the different handle alignments.

or

  1. Press ⌃ Ctrl + G to bring up the settings HUD.

  2. In the Animate Settings ▸ Transform Handle tab, set the Alignment option to align the handle to the world axes, local axes, construction plane, camera view, or parent control.

Keep the same transform handle mode when selecting different controls

  1. Press ⌃ Ctrl + G to bring up the settings HUD.

  2. In the Animate Settings ▸ Transform Handle tab, turn off Change Mode Automatically.

  3. In the Mode option, select the transform handle mode you want displayed.

Change the amount of zoom when framing a selection

  1. Press ⌃ Ctrl + G to bring up the settings HUD.

  2. Adjust the Framing Zoom option.

Turn on gimbal mode

  1. Press ⌃ Ctrl + G to bring up the settings HUD.

  2. In the Animate Settings ▸ Transform Handle tab, turn on Use Gimbal Mode.

You can also turn on gimbal mode by clicking in the viewport, and turning on Gimbal Mode.

Transform limits for controls

Transform limits define the translation and rotation limits for controls.

Setup

Transform limits can be set up using the APEX Configure Controls SOP. In the animation workflow, place the APEX Configure Controls SOP after building the rig logic, and before the APEX Scene Add Character and APEX Scene Animate SOPs:

APEX Configure Controls SOP in animation workflow
  1. In the APEX Configure Controls SOP, add configurations for different controls by clicking beside Control Configs.

  2. In the Control Group parameter, choose from the drop-down list or use the APEX path pattern syntax to specify a control or groups of controls.

  3. Turn on Use Limits.

  4. In the Use Limits section, add a set of transform limits by clicking beside Parameter Limits.

  5. In Parm Name, specify the transform parameter to set limits for - t for translation and r for rotation.

  6. Turn on the limits you want to set and specify the x, y, and z values for the limits.

    Parameter

    Description

    Max, Min

    A soft limit on the transform parameter. The Vector3 values are the limits on the x, y, and z values of the parameter. These limits are enforced only if the Enforce Transform Limits option is turned on in the settings HUD. If Enforce Transform Limits is turned off, these limits are used as a visual indicator in the animate state.

    Max Lock, Min Lock

    A hard limit on the transform parameter. The Vector3 values are the limits on the x, y, and z values of the parameter. This cannot be turned off in the animate state.

Translation limits

Translation limits that are enforced in the animate state are visualized as planes.

One-sided limits are limits where either the max or min limits are specified, but not both.

One-sided limit

Two-sided limits are limits where both the max and min limits are specified.

Two-sided limit

Soft limits (Max, Min) can be enforced in the animate state by turning on Enforce Transform Limits in the settings HUD, Transform Handle tab. If soft limits are not enforced, they are used as a visual indicator.

Enforced soft limit
To...Do this

Enforce the Max and Min parameter limits

In the settings HUD, Transform Handle tab, turn on Enforce Transform Limits.

The Max/Min limits are visualized as a plane indicating the enforced limits.

Enforce Max/Min translation limits

Use the Max and Min parameter limits as a guide only

In the settings HUD, Transform Handle tab, turn off Enforce Transform Limits.

The Max Lock/Min Lock limits are visualized as a plane indicating the enforced limits, and the Max/Min limits are visualized as a dot along the line to the Max Lock/Min Lock plane. When the control is dragged past the Max/Min limits, the color of the line changes as the control is moved between the Max/Min limits and the Max Lock/Min Lock limits.

Use Max/Min translation limits as a guide only

Rotation limits

Rotation limits are visualized as arcs in the tranform handle. Arcs that are filled in with a background color are rotation limits that are enforced in the animate state. Soft limits (Max, Min) can be enforced in the animate state by turning on Enforce Transform Limits in the settings HUD, Transform Handle tab.

The arcs are drawn based on the rotation order of the control.

Hard limits and soft limits specified, soft limits not enforced
Only hard limits specified
Soft limits enforced
Only soft limits specified but not enforced

For one-sided limits, the color of the arc changes depending on how close you are to the limit.

One-sided rotation limit

Animate state tools

The following tools are used to add different functionality to your animation within the animate state:

Add Locator

Adds locators to use as pivot points for controls.

Add Constraint

Adds constraints between controls.

Dynamic Motion

Replaces animation curves with dynamic motion.

Ragdoll

Adds a ragdoll simulation to your animation.

The tools can be accessed from the top toolbar or the radial menu (press C when hovering over the viewport):

Tools radial menu

See animate state tools and functionality for more information.

Configurations and settings

The various functionalities, configurations, and settings for the animate state can be accessed through the following menus and HUDs:

Context menu

Options in the context menu include copying and pasting transforms, mirroring poses, and adjusting the transform handle mode, alignment, and position.

Settings HUD

The settings HUD is accessed by pressing ⌃ Ctrl + G while hovering over the viewport. It provides some of the same transform handle options as the context menu, as well as options for adding motion paths and transient constraints to your animation.

Parameters HUD

The parameters HUD is accessed by pressing G while hovering over the viewport. It allows you to change the transform component values (translate, rotate, scale) of the selected control, as well as some tool-specific parameters.

Handle parameters window

The handle parameters window is accessed by pressing P while hovering over the viewport. It provides options for configuring the look and functionality of the transform handle.

Context menu

Option

Description

Copy Selection

See copying and pasting controls.

Paste World Transforms

See copying and pasting controls.

Paste Local Transforms

See copying and pasting controls.

Cycle Mode

Cycles through the different transform handle modes.

Xform Mode

Select a transform handle mode:

  • x - Full transform handle

  • t - Translate mode

  • r - Rotate mode

  • s - Scale mode

  • c - Minimized mode

  • Minimize All Xforms - Collapses all the handles in the scene to minimized mode.

Alignment

Determines how the transform handles are aligned.

  • World - Aligns the handle with the world axes. Does not rotate the actual control.

  • Local - Aligns the handle with the control’s local transforms. Does not rotate the actual control.

  • C-Plane - Aligns the handle with the construction plane; the handle axes are set by the construction plane. Does not rotate the actual control.

  • View - Aligns the handle with the view transform (the angle you are looking at the control). Does not rotate the actual control.

  • Parent - Aligns the handle with the parent control. Does not rotate the actual control.

  • Separate Alignments - When turned on, unties the different components of the handle (translate, rotate, and scale). You can then choose to separately align the different components using the Translate Alignment, Scale Alignment, and Rotate Alignment options that show up under the Alignment setting when Separate Alignments is turned on.

  • World Axes - Rotates the control to align with the world axes, but does not change the handle alignment.

  • View Axes - Rotates the control to align with the view axes, but does not change the handle alignment.

  • C-Plane Axes - Rotates the control to align with the construction plane, but does not change the handle alignment.

  • Align to Control - Reorients a control to match the orientation of another control.

    1. Select Align to Control.

    2. Click the control you want the current control’s orientation to match.

  • Start Orientation Picking - Aligns the selected handle axis to another control or to templated geometry.

    1. Select Start Orientation Picking.

    2. Click the handle axis you want to align.

    3. Click the control or the point/edge of the geometry you want to align the axis to.

    Orientation picking
  • Cancel Orientation Picking - Cancel out of orientation picking mode.

Move Pivot

Moves the location of the control:

  • Move Pivot to World Origin - Moves the pivot to (0, 0, 0).

  • Move Pivot to C-Plane Origin - Moves the pivot to the origin of the construction plane.

  • Project Pivot onto C-Plane - Moves the pivot “up” or “down” onto the construction plane. The pivot is projected onto the construction plane at an angle perpendicular to the construction plane.

  • Move Pivot to Control - Moves a control to match the position of another control.

    1. Select Move Pivot to Control.

    2. Click the control you want the current control’s position to match.

Snap To

When Pivot Mode is turned on, the pivot could be moved away from the control.

  • Snap Pivot to Centroid - Moves the pivot back to the control.

  • Snap Centroid to Pivot - Moves the control to the pivot.

  • Snap Handle to Control - Moves and reorients a control to match the position and orientation of another control.

    1. Select Snap Handle to Control.

    2. Click the control you want the current control’s position and orientation to match.

Key Components

Sets keyframes for the translate, rotate, or scale components of the active handle.

Gimbal Mode

When Gimbal Mode is turned off, Houdini does background work so that you always see three rotation ring handles. When you drag a ring, the other rings rotate with it, regardless of the order of rotations.

The benefit is that it is impossible to gimbal lock the control axes by dragging the rotation handles. The downside is that in this mode, Houdini changes all three rotation components, not just the one you are dragging, and performing rotations this way can lead to very bad animation curves.

When Gimbal Mode is turned on, Houdini displays the true position of the rotation handles, and dragging the rotation handles changes the rotation components directly without Houdini trying to fix gimbal lock.

The benefit is that you have direct, independent control over the three rotation components, so you can use the handles to set up your animation without worrying about Houdini changing the other components. The downside is the possibility of gimbal lock.

For more information, see gimbal mode and fixing gimbal lock.

Pivot Mode

When turned on, you can move the handle away from the control so that the handle is offet from the control. When turned off, the handle is used as a pivot point for the control.

Revert

Resets the handle or control values:

  • Revert Handle to Default Values - Resets the handle values.

  • Revert Controls to Default Values - Resets the transforms for the selected controls.

Mirror with Plane

Enters the mirror pose state. Press ⌃ Ctrl + G to bring up a HUD with the mirror settings, which allow you to set certain configurations before mirroring is applied. After setting the configurations, press Enter while hovering over the viewport to apply the mirroring. See mirroring poses for more information.

Mirror with Default

Mirrors the selected controls across the same plane that the rig is mirrored across without any additional user input. See mirroring poses for more information.

Settings HUD

To bring up the settings HUD, press ⌃ Ctrl + G while hovering over the viewport. The following groups of settings are available within the Animate Settings tab of the settings HUD:

  • Transform Handle

  • Motion Path

  • Transient Constraints

Transform handle

Option

Description

Change Mode Automatically

When turned on, sets the handle Xform Mode based on the control’s transform parameters.

Mode

Sets a transform handle mode. See the Xform Mode option in the context menu.

This option is not available when Change Mode Automatically is turned on.

Alignment

Determines how the transform handles are aligned. See the Alignment option in the context menu.

Use Gimbal Mode

See the Gimbal Mode option in the context menu.

Enforce Transform Limits

When turned on, does not allow the controls to exceed the defined transform limits. See transform limits for more information.

Framing Zoom

Defines the camera zoom to the selection in the animate state when pressing F for framing.

Motion path

Transient constraints

Parameters HUD

To bring up the parameters HUD, press G while hovering over the viewport. The transform component values (translate, rotate, scale) of the selected control can be changed by typing in the textboxes or using the value ladder.

The following buttons are available in the parameters HUD:

Resets to the default parameter values.

When multiple controls are selected, snaps the selected controls to the position of the primary control (the control where the transform handle is placed).

Copies the parameter values.

Pastes the copied parameter values:

  1. Select a control.

  2. Click to copy its parameter values.

  3. Select another control.

  4. Click to paste the copied parameter values.

Toggles the enabled/disabled state of the translate component values. When disabled, the translate components are greyed out, and translate values from other controls cannot be pasted into the current control’s values.

Toggles the enabled/disabled state of the rotate component values. When disabled, the rotate components are greyed out, and rotate values from other controls cannot be pasted into the current control’s values.

Toggles the enabled/disabled state of the scale component values. When disabled, the scale components are greyed out, and scale values from other controls cannot be pasted into the current control’s values.

Keying values

Keyframes can be set on the component values in the parameters HUD:

  1. Select a control.

  2. ALT click to key a component.

    or

    click a component and select Key.

    or

    ⇧ Shift click to key all the components.

Handle parameters window

To bring up the handle parameters window, press P while hovering over the viewport.

Option

Description

Handle Translate Step

The step size to move the control when holding ⌃ Ctrl and moving the translate handle.

Handle Rotate Step

The number of degrees to rotate the control axes when holding ⌃ Ctrl and moving the rotate handle.

Handle Scale Step

The step size to scale the object when holding ⌃ Ctrl and adjusting the scale handle.

Handle Line Width

Adjusts the handle line thickness.

Handle Scale Factor

Adjusts the handle size.

Handle Brightness

Adjusts the handle brightness.

Draw Handles in All Viewports

When the viewport is split to show multiple views, turning this on displays handles in all the views. When turned off, only displays handles in the view that the mouse is hovering over.

Show Handle Plane Controls

When turned on, shows the handles that allow you to move the control in a plane.

Alternate Rotate Mode as Default

When turned on, continues rotating the control axes as you drag away from the rotate rings.

Translate Axes outside Rotate Sphere

When turned on, displays the translate axes outside the rotate sphere in the full transform handle (“x”) Xform Mode.

Pose Tools

Select the animate tool to use.

Use Click and Drag

When turned on, allows you to click and drag controls in one step. When turned off, controls need to first be selected, and then dragged in the next mouse action.

Use Control XRay

When turned on, controls are visible behind objects.

XRay Strength

Controls the opaqueness of controls behind objects.

Hide Controls During Playback

When turned on, hides controls when playing back the animation.

Animate state HUD panels

The following options are available by clicking on the HUD panels in the animate state:

Title Visible

When turned on, the title of the HUD is visible.

Auto Resize

When turned on, the HUD panels are automatically resized when changing modes or showing/hiding parameters. This option is automatically turned off if the HUD is manually resized.

Auto Position

When turned on, and Unpin is also on, the HUD panels are brought up at the current mouse position. This option is automatically turned off if the HUD is manually moved.

When turned off, the HUD panels are brought up at their previous position.

Lock Position

When turned on, locks the position of the HUD panel. This can also be set using / on the top right of the panel.

Minimize

When turned on, minimizes the HUD panel. This can also be set using / on the top right of the panel.

Pin Left

When turned on, pins the HUD panel on the left side of the viewport.

Pin Right

When turned on, pins the HUD panel on the right side of the viewport.

Unpin

When turned on, and Auto Position is also on, the HUD panels are brought up at the current mouse position.

When turned on, and Auto Position is off, the HUD panels are brought up at their previous position.

Hide

Hides the HUD.

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