Houdini 21.0 Nodes Geometry nodes

Agent Clip 2.0 geometry node

Adds new clips to agent primitives.

On this page
Since 17.0

This node adds additional animation clips to an agent primitive’s definition for driving its skeleton.

When loading a clip from a CHOP or a file, the channels within the clip should be of the form <transform_name>:<channel_name>, where <transform_name> is a string that matches the values returned by the agenttransformnames() VEX function, and <channel_name> is one of tx, ty, tz, rx, ry, rz, sx, sy, or sz. The channels that start with t denote translation, r denotes rotation, and s denotes scale. The resulting transforms are treated as local transforms, such as those returned by the agentlocaltransforms() VEX function (ie. they are relative to the corresponding parent transform in the agent’s skeleton).

Parameters

Group

The agent primitives in the input geometry to modify.

Clip Preview

Set Current Clip

When turned on, changes the current animation clip of the agent. This can be useful for previewing new clips.

Clip Time

When turned on, sets the current time for the agent’s animation clip.

Apply Clip Locomotion

When turned on, applies the clip’s __locomotion__ transform so that you can easily test locomotive clips.

Locomotion Settings

Create Locomotion Joint

When turned on, creates an extra joint named __locomotion__, which serves as a placeholder for factored out locomotion animation when Convert to In-Place Animation is turned on.

Locomotion Node

The name of the transform in the hierarchy that controls the locomotion of the character (i.e. the node that has translation channels that move it forward in space).

Locomotion Orient

The optional name of a transform in the hierarchy that is used to extract an overall rotation using the vector from the Locomotion Node to this transform. If this transform is the same as the Locomotion Node, its orientation is directly extracted.

Reload

Reloads the clips.

Clips

The number of clips to add.

Name

The name to identify the clip. All the clips in an agent definition must have a unique name.

Input

The source of the clip to add. See input sources for details on the parameters of the sources.

Character Rig

Creates an animation clip from a character subnetwork/asset in the scene.

FBX

The disk path to an FBX file. As with the Agent SOP, a clip is created for each take in the FBX file. The ${FBX_TAKE_NAME} and ${FBX_TAKE_INDEX} local variables can be used with the Name parameter to generate clip names based on the take name and index from the FBX file.

File

The disk path to a .clip or .bclip to use. As with the Agent SOP, the ${CLIP} local variable can be used as a * placeholder to load a set of files. The name of the clip is inferred by substituting the string matched by ${CLIP} for ${CLIP} in the Name parameter.

CHOP

The path to a CHOP to load the clip data from.

USD

Creates an animation clip from one or more USD Skeleton primitives. The source USD stage can be a file on disk or a LOP node. The ${USD_PRIM_NAME} local variable can be used with the Name parameter to generate clip names based on the USD primitive’s name. The animation clip’s frame range is determined from the stage’s startTimeCode and endTimeCode metadata, which can be modified using the Configure Layer LOP.

MotionClip

Creates the clip from a MotionClip, provided via the second input. The clip’s name, sample rate, and length are determined from the geometry’s clipinfo attribute, but the name can be optionally overridden using the Name parameter. Multiple clips can be imported by packing each clip and turning on Treat Packed Primitives as Inputs.

Input sources

Character Rig

Character Rig

The path to the object subnetwork containing the character rig.

Traverse Outputs

When turned on, the Character Rig path is used to specify the nodes to import by traversing its outputs instead of its children.

Pattern

The pattern used to limit the nodes that should be imported. Patterns using usual opglob syntax along with @‹bundle references are accepted.

Note

Relative paths specified here are relative to this node, not to the Character Rig.

Type

Optional mask to further restrict the object node types that are imported. Turn off the toggles to prevent baking particular types.

Start/End/Inc

The range of frames for the clip (start frame, end frame, and increment), inclusive.

Minimal Nodes

When turned on, only includes animation for nodes whose display flags are on. When turned off, all the nodes in the hierarchy are included in the clip.

Keep Transforms for Deforming Shapes

When Minimal Nodes is turned on, this specifies whether channels for nodes containing deforming geometry are included in the clip.

Convert to In-Place Animation

When turned on, converts the animation to an in-place clip in addition to recording the locomotion transform.

Project Positions on Dominant Axis

When creating the animation of the Locomotion Node, turning this on projects the positions along the dominant axis of motion in the XZ plane. If the clip is used as an in-place clip with the crowd solver, turning on this option can help to maintain hip swaying in the motion.

FBX

File

The file to load the clip from.

Take Name

The take(s) in the FBX file to import animation from. This supports the standard pattern matching syntax to specify multiple takes. If empty, all takes are loaded.

Convert Units

When turned on, converts to Houdini units when importing the FBX file.

Remove Namespaces from Joint Names

When turned on, joint names imported from the FBX File are stripped of any namespace prefixes.

Minimal Nodes

When turned on, only includes animation for nodes whose display flags are on. When turned off, all the nodes in the hierarchy are included in the clip.

Keep Transforms for Deforming Shapes

When Minimal Nodes is turned on, this specifies whether channels for nodes containing deforming geometry are included in the clip.

Sample Rate

When turned on, uses the specified sample rate for the clip instead of the sample rate stored in the FBX file. This is useful if the application that exported the original FBX file did not set the sample rate correctly.

Convert to In-Place Animation

When turned on, converts the animation to an in-place clip in addition to recording the locomotion transform.

Project Positions on Dominant Axis

When creating the animation of the Locomotion Node, turning this on projects the positions along the dominant axis of motion in the XZ plane. If the clip is used as an in-place clip with the crowd solver, turning on this option can help to maintain hip swaying in the motion.

File

File

The file to load the clip from.

Keep External Reference

When turned on, the external reference is maintained when the geometry is saved. If the reference is maintained, the original source of the clip needs to be available when the saved geometry is used. Otherwise, a copy of the clip is inlined when saving out the geometry so that the original clip is no longer needed.

Delay Load

When turned on, clips are only loaded from disk when their data is needed. This can improve load times and memory usage for large clip catalogs, but errors from loading clips may not be reported immediately.

CHOP

CHOP

The CHOP node to load the clip from.

USD

Source

Specifies whether the source USD stage is from a LOP node or USD file on disk.

LOP Path

When Source is set to LOP, this is the path to a LOP node. The agent definition is constructed from a UsdSkel character in the USD stage output by this node.

USD File

When Source is set to File, this is the path to a USD file on disk.

Skeleton Primitives

The Skeleton primitive(s) to import animation from. You can also use primitive patterns for advanced matching, including matching all prims in a collection (using /path/to/prim.collection:‹name).

If a SkelRoot primitive is specified instead, the animation is imported from its first skeleton binding. If the pattern is empty, the first Skeleton prim in the stage is used.

Frame Range

Specifies whether to use the time code range from the stage’s metadata (Stage), the range of time samples from the SkelAnimation prim and the Skeleton prim’s transform (Skeleton Animation), or the Start/End/Inc parameters (Use Specific).

Start/End/Inc

When Frame Range is set to Use Specific, this is the start frame, end frame, and frame increment to bake out. All the values may be decimal (for example, start on frame 1.5).

Convert to In-Place Animation

When turned on, converts the animation to an in-place clip in addition to recording the locomotion transform.

MotionClip

Treat Packed Primitives as Inputs

When turned on, creates a clip from the contents of each packed geometry primitive in the second input’s geometry. This can be used to procedurally import several MotionClips.

Convert to In-Place Animation

When turned on, converts the animation to an in-place clip in addition to recording the locomotion transform.

Inputs

Agents

The agent primitives to add clips to.

MotionClip

The geometry that contains the MotionClip (or a set of packed MotionClips) to import when Input is set to MotionClip.

Outputs

Output

The original agent primitives with the added clips.

See also

Geometry nodes