| Since | 21.0 |
This component sets up IK chains with 3 nodes and provides options to add twist and clavicle setups, and blend between IK and FK. It can also set up multiple IK chains in the rig hierarchy.
In the viewport, the menu provides configuration options for each limb. See the gear menu for descriptions of the different types of interaction elements.
The image below shows an example network for setting up the limb component:
-
Use the
Attribute Adjust Array SOP to add tags to the limbs and root joint. The root joint is used as a parent for the limb’s pole vector and tip controls (see preparing skeletons for more information on tagging skeleton joints):
Limb tags Note
If you don’t need to set up custom leveling on the arms and legs (see the Level Tip parameter), you can use one tag for all the limbs.
-
Add the mesh and skeleton to a character folder structure, and create a starting rig for the character using an
APEX Pack Character SOP. See rigging a character for how to use this node. On the APEX Pack Character SOP:
-
Turn on Add FK and Bone Deform Components.
-
Remove the entries in the Rotate Group parameter.
-
-
Add the limb functionality to the different parts, or segments, of the character - on the
APEX Autorig Component SOP,
limb, in the Driven tab, set Segments to the limb tags, in our example, “L_leg R_leg L_arm R_arm”. The image below shows the limb controls that are added to the character’s arms and legs:
Limb controls for the arms and legs -
To blend between IK and FK for the limb, turn on the IK/FK Blend parameter in the Settings tab. This adds IK/FK blend configuration parameters to the limb component’s
menu that allows you to blend between IK and FK for the limb:
IK/FK blending -
To add twist functionality to the legs:
-
Add twist tags to all the joints in the leg using the Attribute Adjust Array SOP:
Twist tags -
In the Twist tab, set Twist to the added tag,
#twist. -
Turn on Display Twist Controls. Twist functionality is added for each limb:
Twist functionality
-
-
You can add a clavicle setup for the arms. This creates a clavicle target control that drives the rotation of the clavicle joint, which in turn moves the shoulder:
Clavicle target control moves the shoulder To set up clavicles for the arms:
-
Add tags to the clavicle and shoulder joints:
Clavicle tags Note
On the skeleton, a twist joint could be at the same position as the shoulder joint (see the twist component for an example). Make sure you tag the shoulder joint, not the twist joint. You can check the name of the tagged joint in the Attribute Adjust Array SOP.
-
In the Clavicle tab, set Clavicle to the added tag,
#clavicle.
-
Parameters ¶
Name
The name to add to the IK nodes created by this component. When using Segments, the segment name is also added to the node names.
Settings ¶
Use IK
When turned on, activates IK for the limb.
Dampen
A larger value dampens the effect of the IK solve, smoothing its snapping effects at the cost of accuracy.
Stretch
A larger value allows more stretch for the IK chain when the target is beyond the length of the chain.
Tracking Threshold
Sets the accuracy of the solve. A higher value is faster but less accurate.
Use Twist
When turned on, uses the pole vector to twist the IK chain.
Level Root
When turned on, sets the root control to world orientation. When turned off, sets the orientation of the root control to that of its associated joint.
Level Pole Vector
When turned on, sets the pole vector to world orientation. When turned off, sets the orientation of the pole vector to that of its associated joint.
Level Tip
When turned on, sets the tip control to world orientation. When turned off, sets the orientation of the tip control to that of its associated joint.
Use Goal Rotation
When turned on, uses the goal rotation for the target orientation. When turned off, uses the solver’s position for the target orientation.
Resist Straight
When turned on, resists straightening of the IK chain.
Pole Vector Offset
The amount to offset the pole vector in the direction of the middle joint (between the root and tip). The IK chain must be slightly bent for this to work.
IK/FK Blend
When turned on, adds IK/FK blend configuration parameters to the limb component’s menu that allows you to blend between IK and FK for the limb.
Driven ¶
Segments
Segments are tags that separate each limb. For example, *Leg loops over tags L_Leg and R_Leg. Tags can be set up on skeleton joints using an Attribute Adjust Array SOP. See preparing skeletons for rigging for more information.
Note
The Segments parameter does not take APEX path patterns, for example, the #<tag> function. Instead, specify the tag names directly in this field.
Driven
The TransformObject nodes to drive. You can specify the individual joints, for example, “
L_Hip L_Knee L_Ankle”, or tags that exist on the TransformObject nodes, for example, “
#ik & #L_Leg”. If specifying only joints, you must list exactly 3 joints because the limb component is specifically set up for 3 joints. You can use this parameter with Segments to choose the specific joints in the segment to drive.
It’s good practice to also specify the bind tags that are set up by default on the FK transform component’s Tags parameter. The FK transform 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 for this component, you can set Driven to “#bind & #L_Leg”.
Driver ¶
Root Name
The name of the root control. If Segments is used, the Segments name is added to the name of the control.
Pole Vector Name
The name of the pole vector. If Segments is used, the Segments name is added to the name of the control.
Tip Name
The name of the tip control. If Segments is used, the Segments name is added to the name of the control.
Twist ¶
Twist
The joints for the twist setup. This parameter accepts APEX path patterns, so you can specify tags in this field, for example, #twist (add this tag to all the joints on the limb you want the twist functionality on).
Pin Offset
The position of the pin control. When Use Upper Twist is turned on, the root of the twist chain is pinned and looks at the pin control.
Display Twist Controls
When turned on, displays the twist controls.
Use Upper Twist
When turned on, activates the twist functionality for the upper part of the limb.
Use Lower Twist
When turned on, activates the twist functionality for the lower part of the limb.
Clavicle ¶
Clavicle
The joints for the clavicle setup, which usually includes the clavicle and shoulder joints. This parameter accepts APEX path patterns, so you can specify tags in this field, for example, #clavicle.
View Limits
When turned on, displays the limits of the clavicle’s rotation.
Offset Angle
The angle that the clavicle can move around. This determines the range of the clavicle rotation. If you increase this value, the clavicle’s range of motion increases.
Window Offset
The offset on the range of the clavicle rotation. You can use this value to change the range that the character’s shoulder can move through.
In the video on the right, the shoulder’s range of motion has been moved forward:
Blend
The amount of clavicle rotation that affects the shoulder movement. If set to 0, the shoulder is not affected by the clavicle rotation. This value sets the default value on the menu’s AutoClav slider.
Auto Clavicle Parent
The parent of the clavicle. This cannot be an ancestor of the clavicle. By default, the clavicle is parented to the tip of the IK chain, for example, the character’s hand. This usually produces the best results for the clavicle setup.
Parent ¶
Root
The parent of the root control(s). When empty, the root control has the same parent as the root node of the IK chain. To unparent the root control, set this parameter to an underscore (“_”).
Pole Vector
The parent of the pole vector(s). When empty, the pole vector is parented to the tip.
Tip
The parent of the tip control(s). When empty, the tip is not parented.
Tags ¶
Shape ¶
The APEX Configure Controls SOP provides more options for changing the look of the controls.
Shape
The shape of the IK controls. It can be set to any of the built-in APEX control shapes.
Color
The color of the control shapes.
Scale
The scale of the control shapes.
| See also |