>> Last Updated on
What is Rigging?
In terms of CG productions, rigging is the process of creating controllers to deform a 3D object or CG character. Not unlike rigging in nautical terms, it creates 'virtual strings' that allow the animators to control the shape of its target with precision.
Facial animation use sliders and customized UI to create a mix between different pre-planned shapes, and freely controlled animations. Oftentimes, every kind of controller and rigging system can be found in the face, as it is a very complex area to rig. Here is a breakdown of the main tools available in a rigger's arsenal of rigging systems.
Bones are the armature of a CG character, that move points of the 3D mesh around it and according to a 'skin weight map'. The skin-weights map defines which part of the mesh is affected by which bone and by how much. It is possible for multiple bones to affect the same area of a mesh, with different influences.
Controllers are often made with curves or transparent polygon outlines. This rope-like display allows the animator to 'click-through' the surface in order to access a lot of controllers in the same small area. The controller is linked to a specific set of deformations on the 3D mesh and allows to manipulate all its different parts independently and at will.
The controller itself does not act on the mesh deformations by default. It does so indirectly, through a different deformation system that it controls, within specific constraints.
No rig is perfect for everything. It needs to be made for movements and actions. You could not transform the rig of Moana into a transformer's. They are not made for the same purpose or style of animation, and it is certainly not just a question of metal parts.
Be warned that images on this page may load slowly because they are animation demos for each rigging system.
Forward Kinematics (FK)
Forward kinematics are the most basic form of rigging. In an FK system, the controller attaches to a bone through direct parenting. There are multiple methods to connect an FK controller: standard parenting, constraint parenting, expressions, attribute linking... Whatever the method of connection, the controller acts like a parent and transfers its rotation and translation to the bone, which in turn deforms the 3D mesh.
This is a good method for a lot of controllers on a CG character, and most notably the arms. FK systems chains are animated with the uppermost parent controller first and then going down the child chain.
Inverse Kinematics (IK)
Inverse Kinematics are conceptually the opposite of Forward Kinematics. It allows the animator to point and aim at where the footsteps should land during a walk, that will be reached when the character's feet are in range.
Think of it as a puppet with magnetic feet that aim at specific target points under the table, so that the character can be moved while always pointing towards these magnets.
When to use an IK system?
IK systems give as more stable base for the rest of the body, because it is goal oriented. It doesn't require constant readjusting of the extremities when moving the hips, as FK systems would require.
Inverse Kinematics also differs from FK in a few ways:
- The controllers are moved in translation units instead of rotated in degrees.
- The controller is moved from the endpoints of the bones instead its base of rotation
- The controller is free to move without limitations, and even detach from the bones.
IK systems are very practicat for these components of a character rig:
- For the character's feet
- For hand interaction behaviors (such as grabbing objects).
In situations where the controller is placed farther or closer than the bone length can reach, the IK will try to aim towards it. However, with some adaptations, it can also be made to stretch and contract to adapt to the position of the IK. This is not as frequent or useful as it sounds because it comes with some complications to the mesh. Indeed, 3D meshes do not like to be squashed in the way bones contract in an IK system.
Multi-Chain IK & Pole Vectors
On an IK chain with multiple bones, only one controller is moved, from the end point of the entire chain of bones, at its lowest child. In this situation, the controller is first moved in place and the bone chain tries to reach that point, aligning all bones in the chain accordingly.
However, Single-Chain (Single Bone) IK systems transfer only translation and aiming information by default. They use an 'SC-solver' that does not include rotational information. However, they can be 'switched' to a 'Rotate-Plane Solver' that does.
The problem of rotation in the bone chain is that you need to tell the 3D software which direction you want the bones to bend around the axis of the bones, if the chain is contracted. For example, it needs to know which direction to bend knees, and never backwards.
Therefore, a 'pole vector' controller must be put in place to determine the direction of the bend. It can be moved manually by the animator but is generally also constrained to the feet controllers. This is to avoid an IK knee flip, where the feet controller crosses over the pole vector and the bone suddenly flip 180 degrees, taking the mesh into contorsion.
The 'reverse foot setup' is an advanced rigging system using a mix of IK and FK, to get the best of both worlds. It uses the principles of animation of an IK system, in terms of general positionning of the goal of the foot.
But it adds controls to animate the end of the foot as an FK system while retaining the aiming properties. It seems complicated when you first learn it, but after you understand the principles, it not that hard. For animators, once you know this setup, you won't go without it.
A 'spline IK system' is a chain of bones controlled by a curve passing throught the bones. The curve points can then be animated to create a smooth deformation of the bone chain.
It is not stretchy by default, therefore it acts more like a snake than an elastic. The endpoint of the bone chain move along the curve to maintain a constant length of bones.
It can be animated in a similar manner as single-chain IKs because curve points do not keep rotational information around themselves, but do not need a pole vector. This kind of system is useful for the spine of characters, flexible mechanical parts and bending animations.
Clusters are groups of vertices from a 3D mesh, deformed by a single controller, the handle. The cluster handle moves the group of vertices in translation, and with the rotation pivot of the controller.
Blendshapes / Target Morph
Blendshapes or 'target morphs', are pre-planned deformation shapes between identical meshes, with vertices placed differently. A blendshape blends between one or multiple of those morph targets, with varying degrees of additive deformations.
Related Career Articles
Good Rigging Tutorials:
- Rigging a Hard Surface Air Vehicle on creativebloq.com
- Rigging a complete human character in Maya with IK, Spline IK and Cluster deformers on cgi.tutsplus.com
Back to the careers Table of Contents
Careers in the 3D Animation & Visual FX Industry
- The different 3D Modeling Specializations for the next Digital Age
- Check out our complete Guide on 3D Computer Hardware
- Or just vote for your favorite 3D software
Tell us what you think, we welcome your comments! Did we miss something?
Join the Wombats
Opt-in our occasionnal newsletter to be the first to be informed of our new tutorials series, original content updates, special offers and important announcements! It’s free and spam-free, plus you can unsubscribe at any time.