Houdini 21.0 Character KineFX

Blend shape rig component

On this page

Blend shapes allow you to morph or blend between geometries that have the same topology. They can be used to create and animate character deformations like facial expressions and muscle bulges. On this page, we walk through how to set up blend shapes and create custom sliders for the blend shape rig component.

Set up blend shapes

We start with a sphere and add blend shapes to the sphere’s mesh:

  1. We use the Transform SOP and Attribute Noise SOP to create the blend shapes:

    Flat blend shape (left), rough blend shape (right)
  2. Name the mesh and blend shapes:

    • The Name SOP is used to name the sphere. Specify a name in the Name parameter, for example, mesh.

    • The Merge Packed SOP names, packs, and merges the blend shapes. Specify a name for each of the blend shapes in the Name parameters.

  3. The Character Blend Shapes Add SOP adds the blend shapes to the sphere’s mesh. In the Skin Name parameter, specify the name of the sphere’s mesh to apply the blend shapes to (set in the Name SOP).

Add character elements to a character folder structure

We now create a skeleton and capture weights for the sphere, and add these elements to a character folder structure, the input format for the rig components downstream:

  1. We use the Skeleton SOP to create a single joint in the middle of the sphere geometry:

  2. The Joint Capture Biharmonic SOP creates captures weights on the sphere for deformation.

  3. The APEX Pack Character SOP adds the shape and skeleton to a character folder structure. See the folder structure in the rig tree view:

    /
    -- Base.shp
    -- Base.skel
    

Blend shape rig component

We now add the FK, bone deform, and blend shape rig components:

  1. Create an FK rig graph - on the APEX Autorig Component SOP, fk, set Component Source to FK Transform.

    See rigging a simple geometry and rigging a character for more information about the FK transform rig component.

  2. Add bone deform functionality to the rig - on the APEX Autorig Component SOP, bone_deform, set Component Source to Bone Deform.

  3. Add blend shape functionality - on the APEX Autorig Component SOP, blend_shapes, set Component Source to Blendshape.

  4. Change the size, shape, length, and position of the blend shape sliders:

    • Slider size - in the Shape tab, set the Scale parameter.

      Note

      Depending on the size of your geometry, the sliders may be very small in comparison. If you cannot initially see the sliders, try increasing the slider size.

    • Slider control shape - in the Shape tab, set the Shape parameter.

    • Slider length - in the Settings tab, Sliders section, the second field of the Size parameter.

    • Distance between the sliders (if there are multiple sliders) - in the Settings tab, Sliders section, the first field of the Size parameter.

    • Slider’s offset from the rig - in the Settings tab, Sliders section, Offset parameter.

    Tip

    If Use Click and Drag in the handle parameters is turned off, you need to first select the slider control, then drag to see the effects of the blend shape being applied. If Use Click and Drag is turned on, you can click and drag the slider control in one step.

Create custom sliders

You can create custom sliders for blend shapes by creating curves with names that match the blend shape it controls. In this example, we create the curves and add them to the character folder structure to be picked up by the blend shape rig component. The sliders must be primitive shapes.

  1. On the Curve SOP, create curves for your custom sliders. Turn on the template flag for the Sphere SOP so you can see where you are drawing your curves in relation to the sphere.

    Slider curves
  2. Specify names for the curves using the Name SOP. Click beside Number of Namings to add a set of parameters for each shape. For each curve:

    • Select beside Group.

    • In the viewport, select the shape and press Enter over the viewport. The Group parameter is populated with the number of the shape.

    • In the Name parameter, set the name to the name of the blend shape it will control. The blend shape names were set in the Merge Packed SOP upstream.

  3. Add the curves to the character folder structure using the Pack Folder SOP:

    • Name the curves Sliders.shp - set Name to Sliders and Type to shp. This matches the default name for the slider geometry (set in the APEX Autorig Component SOP, blend_shapes, Settings tab, Sliders section, Slider Geo parameter).

    Note

    If you don’t name the curve geometry with a .shp extension in the character folder structure, they won’t show up when viewing the blend shapes in the APEX Autorig Component SOP.

  4. Select the APEX Autorig Component SOP, blend_shapes, turn on its display flag, and click Animate on the left toolbar:

  5. At this point, the curves are not parented to the sphere. To parent the curves, go to the Parent tab in the APEX Autorig Component SOP, blend_shapes, and set Root to the sphere control (find the sphere control name in the selection sets HUD).

    Unparented sliders (left), parented sliders (right)

How-to

To...Do this

Display specific blend shapes

On the blend shape rig component (APEX Autorig Component SOP), Settings tab, Blend Shape section, set Shapes to specific blend shapes. By default, it shows all the blend shapes.

Change the name of the character mesh to add blend shapes to

On the blend shape rig component (APEX Autorig Component SOP), Settings tab, Blend Shape section, set Skin Name to the name of the character mesh. Make sure this name matches the Skin Name in the Character Blend Shapes Add SOP upstream.

See also

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