Rigging - mhulse/3d-wiki GitHub Wiki
- Remove doubles
- Put on floor; simplest approach here is to switch to ortho mode and eyeball the floor placement.
- Put cursor in center (SHIFT + S, or, SHIFT + C)
- 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”
- CTRL + A and reset Location
- CTRL + A and reset Rotation and Scale
- …
By @patflannery
-
Start with your model. Make sure they're standing on the origin, with their feet at
Z=0
, and facingZ
forward. -
Start adding your bones - in Object Mode hit SHIFT + A then add a bone to begin.
-
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.
-
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.
-
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.
In object mode, press CTRL + TAB to switch into pose mode.
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!
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
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” are for things like knees and elbows; you set your IK rig to always point at these targets
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!
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:
In bone mode, if you select a “controller” bone, and SHIFT click on another bone, press SHIFT + I to add an “ik restraint”.
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
In pose mode, click SHIFT + CTRL + C to “Add constraints with targets” modal menu window
FK, or Forward Kinematics, is the default behavior for bone chains.
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.
In order to see bones through mesh, go to the armature display properties, and turn on “X-Ray”.
When in edit mode for bones, you can use SHIFT + A to add a new bone at the 3d cursor position.
In edit mode, select bone and press ALT + F to flip direction of bone.
You can clear the parent of a bone by pressing ALT + P (e.g. for clearing parent of a “helper” bone).
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).
To mirror bones, select them, press W and then Y (for Symmetrize”).
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