Rig Features

Naming and Organization

Hierarchy and Collections

Rig objects are part of the mother collection named character1 (this is the default name, can be renamed through Set Character Name ).

The rig and UI objects are part of the child collection character1_rig.
The custom shapes used for the controller bones shapes are part of the child collection character1_cs. This collection is hidden by default.

Rig objects are also parented to the char_grp Empty object, as a master/root object of the hierarchy.

_images/outliner_28.jpg

Note

When using the Additive mode for the secondary controllers, a second armature stands besides the main one, named rig_add.
It is hidden by default, it is not meant to be edited. It only exists for internal mechanics. Do not delete it, when using Additive secondary controllers.

Armature Collections

Note

Armature collections are part of Blender 4 and above only

The armature contains several bone collections for (obvious) organizational purposes.

  • Main: Main bones controllers to manipulate the rig (posing, animation)

  • Secondary: Additional controllers to fine tweak the poses

  • Deform: Deforming bones

  • Reference: Reference bones used as guides to align the rig bones on.
    Typically, this collection is displayed when clicking Edit Reference Bones.
  • internal/ mch: These collections hold internal, mechanical bones that are not supposed to be selected or edited. These collections should generally remain hidden.

  • color_: Thes collections hold bones belonging to the left (.l), right (.r) or middle (.x) side.
    They work with the Color Theme feature
_images/armature_collections.jpg

Armature Layers

Note

Armature layers are part of Blender 3.6 and earlier only

  • Layer 0: Main controllers

  • Layer 1: Secondary controllers

  • Layer 16: Other picker bones

  • Layer 17: Reference bones

  • Layer 31: Deforming bones

  • Others: For internal use only

_images/armature_layers_28.jpg

Rig Overview

User Interface - Controllers

  • Controller bones can be selected directly in the 3d view or by using the bone picker interface.

  • To hide controllers in the viewport, disable the “overlays”:

_images/disable_overlays.jpg

  • Picker Panel : The picker panel exposes all controllers in a laid out form, thus easing bone selection when the 3D viewport is cluttered with many elements.
    Easily select a group of controllers (arms, legs, secondary…) by making a rectangle selection (B key) around them, show/hide bones collections…

Note

The picker layout can be customized. By default, all buttons are spread on a grid template, but their position can be changed (see Picker Panel)

_images/picker_image2.jpg

Picker Buttons

Layers: Click these buttons to show/hide a collection

  • Main: The main controllers for posing the character. You can’t do much fine-tweak with them but they give a good basis to start with.

  • Secondary: For fine shape tuning (see Secondary Controllers). To scale, move, rotate a specific body part, tweak a shape…


Naming

  • c_ prefix: Bone names starting with c_ (e.g. “c_root_master.x”) are controller: they are selectable, they’re meant to be animated.
    They may deform or not the meshes, but they are key elements to pose the character.
  • _ref suffix: Bone names ending with _ref (e.g. “root_ref.x”) are “reference” bones: they’re guides used to align the final rig on.
    They’re not part of the rig system itself but they’re part of the armature, in a hidden layer, revealed when clicking Edit Reference Bones.
    They don’t deform meshes.
  • Others: Bones without specific prefix or suffix as aforementioned are internal bones, they can be mechanical and/or deforming bones.
  • Side suffix: .l and .r suffix (e.g. “c_hand.l”) stands for the left or right side of the character (+X = right, -X = left).
    Right controllers are blue, left are red (by default)
  • .x suffix means they belong to the center of the character, in green.

  • Shapes objects for bone display have the prefix cs_ (custom shapes).


Rig Usage

Scaling the character

  • To apply a global scale, the c_pos and c_traj controllers can be scaled, or alternatively the whole armature object (in that case, all mesh objects must be parented to the armature).

_images/global_scale.gif

  • The main controllers are fully scalable except a few ones that are locked for specific reasons.
    Don’t unlock the transforms values, it would lead to strange behaviors.
    Use the secondary controllers instead (second layer) to scale a specific part.

Arms and Legs

_images/properties2_28.jpg

To display the arms and legs properties, an arm or leg controller must be selected (“c_hand_ik.l” for example).
Press the N key to display the properties panel on the right side of the 3d view and go to the Tool tab > Rig Main Properties

IK-FK Switch

Forward (FK) and Inverse Kinematics (IK) are implemented on arm and leg chains.
The switch value goes from 0 (IK) to 1 (FK).

In IK mode, the feet stick to their position when moving the main pelvis controller (c_root_master). The legs rotation is controlled by the foot position in a reversed way.

_images/ik_legs.gif

In FK mode, each bone can be rotated individually, the legs bones inherit the main pelvis controller position and rotation.

_images/fk_legs.gif

Important

When should I use IK or FK?
You generally want to use IK when feet or hands are planted on a surface (floor, wall…).
Only IK constraints allow to keep them perfectly steady when moving the rest of the character.
FK will shine when the hands or feet are moving freely in the air.
Only FK will lead to natural, realistic arcs when animating, while moving an IK hand from one location to another will interpolate as a straight line, which (most of the time) don’t look very good.
_images/anna_waves.gif

Snap IK-FK

Switch and snap the kinematic mode. If currently set to IK, will switch to FK, and vice versa.

Note

Access the manual, advanced snap features by clicking the Gears icon button next to “Snap IK-FK”

  • Snap FK > IK
    Snap the IK chain onto the FK chain, while switching the IK-FK value to 0 (IK)
  • Snap IK > FK
    Snap the FK chain onto the IK chain, while switching the IK-FK value to 1 (FK)

_images/bake_ik_fk.jpg

  • Bake FK > IK
    Snap the IK chain onto the FK chain for a specified frame range, and bake it to keyframes. Useful when converting an FK animation to IK.
  • Bake IK > FK
    Snap the FK chain onto the IK chain for a specified frame range, and bake it to keyframes. Useful when converting an IK animation to FK.

Arm FK Lock

Note

This setting is not enabled by default. Must be turned on in arms Limb Options, see Arm FK Lock-Free

  • The upperarm will inherit the rotation of the torso (default locked behavior) or the master c_traj rotation when it’s unlocked.

_images/arm_fk_lock.gif


Leg FK Lock

Note

This setting is not enabled by default. Must be turned on in legs Limb Options, see Thigh FK Lock-Free

  • The thigh will inherit the rotation of the pelvis (default locked behavior) or the master c_traj rotation when it’s unlocked.

_images/leg_fk_lock.gif


Stretch Length

To specify the length of the IK or FK chain

_images/stretch_length.gif


Auto Stretch

To enable (1) or disable (0) auto-stretch (IK chain only).
_images/auto_stretch.gif


Fix Roll

Important

Deprecated feature, now useless since new and better twist constraints have been set up in recent updates.

Fix the ankle roll/twist effect when the foot is highly rotated. Useful for quadruped rigs.


Snap Pole Parent (IK only)

Switch the Pole Parent setting to 0 (global, c_traj parent), or 1 (foot parent) and preserve its position.
See the pole constraints to change the parent bone.
When the Smart IK Pole is enabled, the pole can be snapped to the Smart IK Pole as a third possibility.
_images/snap_pole_parent.gif


Snap Pinning

Switch the Elbows and Knees Pinning setting to 1 or 0 and snap the related bones (elbow or knee) automatically.


Legs

Legs Main Controllers

Select the controller c_foot_roll_cursor to access these foot motion:

  • Bank left-right: translate Z axis

  • Foot rotation from heel/tip toes: translate X axis

  • Foot rotation from the ball: Select the controller c_foot_01 and rotate

_images/foot_controls_28.gif

In IK mode, the knee/elbow can be oriented using the pole controller, or using the direct rotation controller (pressing RR (two times R key) is recommended to rotate it easily)

_images/ik_ctrl_28.jpg


Foot Roll Break

Note

Not enabled by default, must be turned on in Limb Options: Foot Roll Break

If enabled, the foot will rotate first from the ball pivot when raising the c_foot_roll_cursor, then from the tip toes pivot when reaching a given value.

  • Foot Roll Break Point: When the c_foot_roll_cursor position reaches this value, the foot will start rotating from the tip toes pivot. Below this value, from the ball.

  • Foot Roll Speed: Global value to adjust how fast the foot rolls when moving the c_foot_roll_cursor

  • Foot Roll Overshoot: When starting to rotate from the tip toes pivot, this value controls how far the toes will rotate backward

  • Foot Roll Unfold Lag: Controls how fast the ball rotation fades out when terminating the foot rool motion. The higher this value is, the slower the ball rotation will be reset to zero

_images/foot_roll_break.gif


Legs 3 Bones

When the leg is setup with 3 bones (3 Bones Leg), the IK constraint may affect 2 or 3 bones, using the 3 Bones IK slider:

_images/3_bones_ik.jpg

_images/3_bones_ik_demo.gif


Elbows and Knees Pinning

Select the pinning bone and set the pinning property to 1.0 for a full pinning.

_images/pining_28.jpg _images/pinned.jpg

Typical example of a character with pinned elbow on the table to virtually stick them to the surface.


Neck

If neck twist bones are enabled, the neck twist amount can be adjusted with Neck Global Twist and Neck Twist.

_images/neck_twist.gif


Lips

By selecting the jaw controller, use the Lips Retain value with additional stretch and squash to keep the lips sealed when opening the jaw.

_images/lips_retain_value_28.jpg _images/lips_retain.gif

If Sticky Lips is enabled, the Lips Follow setting allows to keep the upper lips in line with the lower lips when moving the jaw on the sides:

_images/sticky_lips_follow.gif

Eyes and Targets

There are two options to animate the eyes: the eye targets (IK), or the eye rotation controllers (FK).

  • The target controller is the big one, containing the two circles for left and right eyes

  • The eye rotation controllers are the smaller ones, closer to the eyeballs

_images/eye_target_3dview.jpg

Picker: select the circle under the eyebrows, inside of the big one. The smallest one, in the center, controls the eye reflection.

_images/eye_target.jpg

When selecting an eye controller, this property will be displayed in the property panel to let you choose wich option you want to use:

_images/eye_target_slider_28.jpg

The target controller also comes with a default ChildOf constraint with the head as parent.
This constraint can be disabled to detach it from the head.
_images/eye_targets.gif


Auto-Eyelids

The amount of automatic eyelid rotation, based on the eyes rotations, can be found when clicking on the eyes or eyelids controllers
Separate values can be assigned for lower and upper eyelids.
_images/auto_eyelids.gif


Fingers

Fingers Bend

  • To bend all fingers at once, select the hand controller, and tweak the Fingers Grasp property in the Rig Main Properties tab:

_images/fingers_grasp_28.jpg

It rotates 2 or 3 phalanges depending on the rigging setup (see Rotate Fingers from Scale ).

Note

This only rotates fingers linearly on the X axis though, it may not be accurate enough to make a decent fist pose. Use the Hand Fist feature to make a real fist pose.

  • You can rotate the three finger phalanges at once by selecting the base finger bone of any finger and use this parameter:

_images/finger_base.jpg _images/bend_all_28.jpg

Fingers Fist

  • If a fist controller (Hand Fist) has been added on the hand, it will nicely curl the fingers into a pre-defined fist pose when scaling it. It is more accurate than the Grasp Fingers property:

_images/auto_fist.gif


Fingers Rot from Scale

  • If the rig is setup with the Rot from Scale parameter, scaling the first phalange will rotate the other phalanges.

_images/new_finger_rot.gif


Fingers Auto-Spread

Rotating the base finger of the pinky will spread out the other fingers as well:

_images/auto_base_fingers.gif


Fingers IK-FK

If IK-FK is enabled for fingers, fingers can be manipulated with these controllers and settings:

_images/fingers_ik_2.gif

_images/fingers_tools_panel2.jpg

  • Snap IK-FK: Switch the IK-FK property and snap finger bones automatically to preserve their current pose

  • IK-FK: The IK-FK switch property value, from 0 (full IK) to 1 (full FK)

  • Snap All to IK/FK: Snaps IK-FK for all fingers at once

  • Toggle All IK Parents: Enable or disable the IK target Child Of constraint, to free them or lock them to the hand, while preserving their current pose.


Secondary controllers

Feel free to make an extensive use of the secondary controllers for fine pose sculpting. For example, here is a typical folded leg pose with default skinning weights, before and after tweaking:

_images/secondary_tweaks.jpg

Alternatively, Corrective Shape Keys can be setup.


Spline IK

Spline IK limbs have various options to enable or disable stretch (Y Scale), volume preservation and variation while stretching/squashing.

_images/spline_ik_props.jpg

If IK-FK Chain is enabled in Limbs Options (see Spline IK Options), IK-FK switch and Snap settings are also shown there.

Note

IK to FK snapping is accurate, but FK to IK is not by nature: compensating the smooth curve interpolation between control points is quite a technical challenge, will be improved later if possible.

_images/spline_snapikfk.gif


Extract Root Motion

_images/extract_root_motion_ex.gif

This button is enabled when selecting the c_traj controller.
It bakes the c_traj controller according to the pelvis position, while maintaining it on the floor, and preserving the rig animation.
This comes in handy when animating, in case the c_traj hasn’t been animated to translate the character, whereas it should be animated for practical reasons (repositioning the character elsewhere, walk cycle, etc…)
A keyframe is added on each frame, to the c_traj and related bones (c_root_master, hands and feet IK controllers, etc…)

Also useful to extract and export root motion animations to Unreal Engine.

_images/extract_root_motion.jpg

  • c_root_master / c_root: Target bone that the c_traj bone will track in order to evaluate root motion, either c_root_master or c_root.

  • Location X,Y,Z: Location axes that will be evaluated when tracking. Generally, Z should be skipped since the pelvis height is not supposed to be part of the root motion, but it can be relevant in some cases (flying, climbing, jumping, etc …)

  • Location Z Offset: If the Z axis is enabled, the initial Z distance (on the start frame) between the c_traj bone and pelvis bone is maintained

  • Rotation: If enabled, the c_traj bone will track the pelvis rotation too

  • Pelvis Forward Axis: Axis of the pelvis bone that is used to track the rotation. Typically Z by default in Auto-Rig Pro armatures, but can be another axis if armatures where generated with Quick Rig for example, leading to different default axes. The Y axis of the c_traj bone will be aligned with it.

  • Frame Start - Frame End: Frame range defining the root motion extraction baking process.


Mirror the Pose

This is more of a Blender native feature, but it’s always useful to know it!
Select the controllers you want to mirror then click these buttons:
_images/mirror_28.jpg


ChildOf Switcher

The Snap Child Of tool is useful to quickly switch from one Child Of constraint to another, while preserving the coordinates of the bone.
It comes with a keyframe button that keyframes all Child Of constraints influence, and supports automatic keyframing.

Example:
In a car drive animation, the hand IK controller must be parented to the steering wheel, then later to the side door.
  • Add two ChildOf constraints to the c_hand_ik controller, with the steering wheel and door as targets. New ChildOf constraints can be added to any bones, see the Blender manual.

  • When animating, switch between constraints by using Snap Child Of.

_images/snap_childof2.gif

_images/snap_childof.gif


Rig Layers

Rig Layers is a list of custom layers for rig and characters related elements, to quickly hide or show components: armature layers, bones, collection and objects.
This is powerful to toggle some features of a character (clothes, props…) or show/hide a given set of controllers.
_images/rig_layers2.gif

Animated visibility is supported if the Animated Layers toggle is enabled:

_images/animatedlayers.jpg


UI Camera for Multiple Characters

In case of multiple characters in the scene, to update the picker window view with the selcted characters, click Set Picker Cam in the Rig Main Properties tab.

_images/set_ui_cam_prop_28.jpg