Rigging - mhulse/3d-wiki GitHub Wiki

Prepping mesh for rig

  1. Remove doubles
  2. Put on floor; simplest approach here is to switch to ortho mode and eyeball the floor placement.
  3. Put cursor in center (SHIFT + S, or, SHIFT + C)
  4. Put origin to 3d cursor (essentially putting the cursor on the ground): In object mode, click CTRL + C to move the 3d cursor to the center of the scene; next, select character mesh and press SHIFT + CTRL + ALT + C and choose “origin to 3d cursor”
  5. CTRL + A and reset Location
  6. CTRL + A and reset Rotation and Scale

Quick-start rigging TL;DR

By @patflannery

  1. Start with your model. Make sure they're standing on the origin, with their feet at Z=0, and facing Z forward.

  2. Start adding your bones - in Object Mode hit SHIFT + A then add a bone to begin.

  3. Once you get them all in you name them all. Then you go to your model and in Edit Mode select verts, add them to Vertex Groups (in right options panel) with the same group names as the bones they correlate to.

  4. Then you Parent the model to the armature by selecting the model in Object Mode, then SHIFT Selecting the armature. Next press CTRL + P to open the "Set Parent To" menu. Of the available options click "With Empty Groups" to parent.

  5. Now select the armature, then switch to Pose Mode, and rotate some of the bones to test the rig. It should move the verts that were selected in your vertex groups.

Rigging tips

Posing your rig

Toggle object/pose mode

In object mode, press CTRL + TAB to switch into pose mode.

Weight paint and pose

While armature is in pose mode press SHIFT + RMB and select mesh, then press CTRL + TAB to enter into weight paint mode. Now you can select bones, to see their influence, and weight paint at same time!

Reset bone’s pose

In pose mode:

Press W and choose “Clear User Transforms (All)”.

Alternatively, press A to select all (or right-click to select individual bones), and then press:

  • ALT + R to reset all rotations
  • ALT + G to reset all translations
  • ALT + S to reset all scales

Inverse/Forward Kinematics

IK vs. FK

There are two main ways to pose a chain of bones:

“Forward Kinematics” (FK) is the normal way of manipulating a bone chain, based on parent-child relationships. You need to rotate each bone individually.

Inverse Kinematics (IK) is another way, where the movement of the chain is determined by a “target” bone (and optionally a “pole target” bone) instead of the normal parent-child relationships. Basically you position the end of the chain, and the IK solver calculates what the rest of the bones need to do in order to make that happen.

Pole targets

“Pole targets” are for things like knees and elbows; you set your IK rig to always point at these targets

IK bend direction

For IK knees and elbows, BE SURE TO ADD A SLIGHT BEND IN THE DIRECTION YOU WANT THE IK TO BEND! If it’s straight, then IK may not work right!

IK Chain length

In pose mode, for IK, you can set the “chain length” of how many additional bones the target/starting bone should affect; the default is 0 “use all bones”; for something like an arm or leg, this number should generally be 2:

Add IK constraint

In bone mode, if you select a “controller” bone, and SHIFT click on another bone, press SHIFT + I to add an “ik restraint”.

Recalculate roll for IK pole targets

In edit mode, select all bones and press CTRL + N and choose “Recalculate Roll” for the “Global” X, Y and Z; this can help for when defining/configuring “pole” targets for IK

Bones

Add constraints with targets

In pose mode, click SHIFT + CTRL + C to “Add constraints with targets” modal menu window

Bone chain FK by default

FK, or Forward Kinematics, is the default behavior for bone chains.

Bone naming conventions

For naming bones that will be mirrored, always use naming convention of <name>.L for left and <name>.R for right; when mirrored, Blender will replace the L or R with it’s opposite.

Bone x-ray display

In order to see bones through mesh, go to the armature display properties, and turn on “X-Ray”.

Add new bone

When in edit mode for bones, you can use SHIFT + A to add a new bone at the 3d cursor position.

Flip bone direction

In edit mode, select bone and press ALT + F to flip direction of bone.

Clear bone parent

You can clear the parent of a bone by pressing ALT + P (e.g. for clearing parent of a “helper” bone).

Disable deform for helper bones

For any “helper” bones in a rig (i.e., bones used to help control the rigging), be sure to disable “deform” option found in the “bone” panel:

Note: You can only turn off deform one bone at a time (i.e., no selecting multiple and unchecking the deform option).

Mirror bones

To mirror bones, select them, press W and then Y (for Symmetrize”).

File output

When exporting to FBX, there’s an option to “export deform bones only”; this is useful for game engines as you don’t need superfluous bones as the game engine will import pre-made animations

Links

⚠️ **GitHub.com Fallback** ⚠️