From BlenderWiki

Jump to: navigation, search

Animating Armatures

Basically, animating armatures (aka rigs) is very similar to objects’ animation: for each bone, you define some key positions/rotations/scales, and use Ipo curves to interpolate between them. You should have read the rigging chapter before diving into this page (if you haven’t, follow the previous link)!

Armature animation is also known as “posing”, as one main technique is to define some key poses, and then blend between them with the NLA (or other high-level control tool). In Blender, it uses a specific Pose mode, which is heavily detailed in the third part of the rigging chapter.

Note that we won’t be able to deeply talk about armatures’ animation here. It’s a huge topic, and you should easily find many tutorials about it on the web! We will just try to give you a short intro to the most interesting techniques available in Blender.

An advanced tool dedicated to armatures following paths, stride, has its own sup-page.

Basic Bones Animation

Basic bones animation is done in Pose mode. You can key each bone’s position (which is only useful for unconnected bones), size and rotation.

These Ipo curves (regrouped in the Pose set, in the Ipo Curve Editor window) control the bones in their local space, which means that they apply relatively to the armature object’s location/rotation/scale, but also relatively to the parent bones’ transformations – as you might expect!

Each bone will have its own Pose Ipo datablock.

Otherwise, bones’ Ipos are nearly the same as transformation objects’ Ipos, except for the rotation.

Quaternions and Rotations

In Blender, bones are rotated in a four-dimensional space, which allows to use quaternions mathematics. Don’t bother if you don’t know them – it’s (hyper)complex, anyway! –, but this is why there are four Ipo curves for bones’ rotation, and why they are named QuatX, QuatY, QuatZ and QuatW (the usual X/Y/Z axis, plus the forth W component).

You might ask yourself, why do they need to use quaternions? Well, first, they can ease maths (similarly to complex (or imaginary) numbers, in 2D geometry). But, more important for you, they allow a smoother interpolation in rotations when the bone is nearly aligned with one of its axis. Else, you would sometimes get strange, violent rotation movements…

But quaternions have a drawback: they are not directly usable by a human! So you should avoid to try to control bones’ rotations directly with their Ipo curves, unless you have a computer somewhere in your mind, the results will most of the time be unpredictable. Always use the 3D views and I key to insert/update your bones’ rotation keyframes.

Actions and NLA

Bones’ Ipo datablocks are always actions, which means you can edit them with the Action Editor too – and obviously, create libraries of actions (movements) to be edited in the NLA Editor, or controlled with advanced tools like the Action constraint

Indirect Bones Animation

As usual, you can also control your bones with indirect animation techniques. Apart from the standard ones (for example, you can obviously use Ipo drivers to control them…), they are two to be noted: Inverse kinematics, and constraints.

Note that you can also use bones to control indirect animations. Think for example in the rotation of the forearm controlling a relative shape key’s influence, to make the muscles inflate when you bend the arm… And more generally, it’s often very hard to get nice deformations of meshes at the joints with just weighting (see the skinning part of the rigging chapter). Well, one way to solve this problem is to define relative shape keys for all the joints’ areas, modeling the mesh as it should be when fully bent, and control these RSK’s influence by the relevant bone’s rotations, through Ipo drivers!

Inverse Kinematics

Also known as IK, this technique tries to ease your rig’s animation. The idea is to use (animate) only a target (which might be a bone, another Empty object, whatever…), and let Blender compute (with optional additional clues) the rotations of all bones in the chain controlled by the IK. For example, by just moving the foot bone, it can rotate (and optionally scale) the whole leg’s bones so that they follow this foot.

Inverse kinematics is very handy, but it can be quite hard to setup a correct IK system (i.e. avoid e.g. the knees to bend in the wrong direction!). You’ll find a full documentation about IK in the posing part of the rigging chapter.

Constraints

You can also add constraints to bones. This would for example allow you to restrict your bones’ rotations, or to have one bone stuck to another mesh object’s surface, etc. Note that:

  • The rig’s rules are preeminent over bones’ constraints. In other words, a Copy Location constraint is only useful to unlinked bones, as it is their parents that control the position of linked bones!
  • Bones have more spaces than objects, and their constraints can often be evaluated in all of them – this can produce very different results!
  • There are at least one constraint specific to bones, the IK Solver one (see above).