Houdini 20.5 Character KineFX

multiik

Sets up IK chains with more than 3 nodes, or multiple IK chains using segments.

Since 20.5
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 multiik component sets up IK chains with more than 3 nodes. It can also set up multiple IK chains in the rig hierarchy using segments.

Parameters

name

The name that is appended to the IK nodes added by this multiikcomponent. The name is not necessary when using segments, as the segment name is also added to the nodes to clearly identify the segment they belong to.

prefix

The prefix that is added to the node names in the IK setup.

suffix

The suffix that is added to the node names in the IK setup.

guidesource

The guide skeleton that is used as a reference when creating controls.

Settings

dampen

A larger value dampens the effect of the IK solve, smoothing its snapping effects at the cost of accuracy.

stretch

A larger values allows the IK chain to stretch more when the target is beyond the length of the IK chain.

trackingthreshold

Sets the accuracy of the solve. A lower value is slower, but more accurate. A higher value is faster, but less accurate.

usetwist

When turned on, uses the pole vector to twist the IK chain.

usegoalrot

When turned on, uses the goal rotation for the target orientation. When turned off, uses the solver’s position for the target orientation.

resiststraight

When turned on, resists straightening of the IK chain.

levelpolevec

When turned on, sets the pole vector controls to world orientation.

leveltip

When turned on, sets the tip controls to world orientation.

levelroot

When turned on, sets the root controls to world orientation.

polvecoffset

The amount to offset the pole vector in the direction of the middle joint between the root and tip.

swapname

When turned on, sets the name parameter to be a prefix. When turned off, sets the name parameter to be a suffix.

Driven

segments

Segments are tags that separate each IK chain. For example, *Leg loops over L_Leg and R_Leg. Segment tags can be set up on the joints using an Attribute Adjust Array SOP.

By default, segments is empty and is run once.

driven

The nodes to drive. You can specify the individual joints, for example, L_Hip, L_Knee, L_Ankle, or a tag that exists on the TransformObject nodes, for example, %tag(ik) & %tag(L_Leg).

It is good practice to also specify the bind tags that are set up by default on the fktransform component’s tags parameter. The fktransform component is normally the first component that is used to start building a rig. Including the bind tag helps to ensure that you don’t include other controls that might have inherited, for example, the L_Leg tag. So in this case, you can set driven to %tag(bind) & %tag(ik).

Parents

rootparent

The parent of the root control(s). When empty, the root is parented to the parent of the root driven node. To unparent the roots, add an underscore in rootparent.

tipparent

The parent of the tip control(s). When empty, the tip is not parented.

povectorparent

The parent of the pole vector(s). When empty, the pole vector is parented to the tip.

Tags

tagroot

The tag for all the roots created by the multiik component.

tagpolevec

The tag for all the pole vectors created by the multiik component.

tagtarget

The tag for all the targets created by the multiik component.

Shape

shape

The shape of the controls. It can be set to any of the built-in APEX control shapes.

scale

The scale of the control shapes.

color

The color of the control shapes.

See also

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