Houdini 20.5 Character KineFX

Bringing animation and character data into KineFX

On this page

In order to perform an animation retarget operation, you first need to bring in the target character you want to retarget the animation to and the source animation skeleton or character you want to retarget the animation from.

To help you with this process, there are several ways to import animation skeletons, captures (skins), and characters into KineFX.

Unpack SOP characters or import from disk

  • If you have a stashed or bundled SOP animation skeleton or character that you now want to unpack, then you can unpack the character data stored in the Stash SOP node or Object Merge SOP node with the Character Unpack SOP node.

  • If you want to unpack a SOP character’s data stream that is saved on disk, and then have the option of using the sequence on disk or a live stream, then you can use the Character I/O SOP node.

  • If you want to import a SOP animation skeleton or character that is saved in a file on disk, then use the regular File SOP node.

Bring in motion capture data

You can bring motion capture data into KineFX in the following ways:

  • Import Acclaim, BioVision, or Motion Analysis motion capture animation files into KineFX with the Mocap Import SOP node or with the File > Import > Motion Capture main menu item.

  • Stream live motion capture data directly from Faceware Studio, Live Link Face, Optitrack Motive, Perception Neuron, Rokoko Studio, Vicon Shogun, or Xsens MVN to KineFX with the Mocap Stream SOP node.

  • Stream live raw motion capture data (UDP or TCP) to KineFX with the Mocap Stream SOP node.

For more information about about importing and streaming motion capture to KineFX, please see Working with motion capture.

Bring in agents from Crowds

You can bring agents or agent clips into KineFX for use with SOP characters and MotionClips in the following ways:

Tip

If the animation skeleton that the Agent Animation Unpack SOP generates for you has a different joint hierarchy than the SOP character you want to retarget its animation to, then you can constrain the animation skeleton’s joints to its target character by using the Rig Copy Transforms SOP node.

Bring in USD data from Solaris or other sources

You can bring in the animation skeleton, character, or capture (skin) from a UsdSkel character (the Skeleton primitive underneath the SkelRoot primitive in a Solaris stage) in the following ways:

Import FBX data

You can import FBX files into KineFX in the following ways:

Bring in object-level character data or HDAs

You can use the Scene Character Import SOP node to import object-level characters or HDAs into KineFX.

Imported object-level Simple Female character

Tip

If there are any problems with your character now that it is in KineFX, please see Troubleshooting your characters after import into KineFX.

For best results, do the following:

  1. Select the Scene Character Import SOP node.

  2. In the Import tab, turn off every Type except Geometry.

    This imports only the geometry responsible for the skin deformation.

    Type parameters

Bring in character data from other DCCs

Troubleshooting your characters after import into KineFX

Problem: Character’s global scale is off

  • Problem 1: If your imported animation skeleton or character is dramatically larger or smaller than it should be, then your animation skeleton or character may come from a source that uses different world units than Houdini (for example, meters vs. centimeters).

    Solution: To correct this problem, locate the Convert Units parameter on the KineFX import node you used to bring in your character or motion data, and then turn it on.

    Example: Convert Units parameter on the FBX Animation Import SOP node
  • Problem 2: If the source or target characters you want to retarget are dramatically different sizes, then you can use the Rig Match Pose SOP node’s bounding box matching to automatically resize their skeletons and conform them to each other.

    Example: Enable Match Bounds parameter on the Rig Match Pose SOP node

Problem: Skeleton is broken into separate joint chains

Sometimes when you import an animation skeleton or character into KineFX, parts of the hierarchy do not make it through.

To correct this problem, you need to re-attach the broken joint chains.

You can re-connect joints with the Skeleton SOP node or the Parent Joints SOP node.

Example: Reconnecting joints using the Skeleton SOP node
Example: Reconnecting joints using the Parent Joints SOP node

Problem: Control objects are missing or they are garbled

Often times when you import a character rig, the links between the control geometry and the joints they drive will not survive the process or the control objects will not come through at all.

To correct this problem, you need to re-attach your control geometry to your character or attach new controls. For more information, see Setting up control geometry.

KineFX

Overview

Preparing character elements

Rigging with APEX graphs

Building rig graphs with APEX Script

Rigging with rig components

Animating in the viewport

SOP-based animation

Deformation

Animation retargeting

Pre-H20

Panes

Appendix