While it is a subject that almost every artist is now expected to know about, skinning is a remarkably under-documented area of 3D. There are three possible explanations for this: firstly, that it is an aspect of character work that depends heavily on personal preference; secondly, that professional animators are reluctant to give up their hard-earned secrets; and thirdly, that it's incredibly difficult to explain in a simple and concise way. Oh well, here goes anyway...
Skinning, or vertex weighting, is the process of assigning the translation control of one object's vertices to another. In most cases, this means assigning control of a character's surface mesh to a virtual bone structure, mimicking the way in which real bones and muscles deform our skin. By setting different 'weights' (values between 0.0 and 1.0) to the vertices, you can share this control out over multiple bones, creating soft blends between joints and more subtle vertex movements.
In the following tutorial we will skin the low-poly character shown above, since to explain how to skin a high-poly character, working with vertex clusters instead of single points, could take an entire issue of the magazine! However, while the density of the mesh you are working with may change, the principles of vertex weighting do not.
Studios tend to have their own individual approaches to skinning, from the use of envelopes and weight painting to the meticulous selection of each vertex for numerical editing. We've tried to cover each of the bases here, so the advice given should be relevant, no matter which workflow you adopt.
At the end of this tutorial, you should be able to apply the techniques to any character of any shape and size. If you get stuck, part-completed scene files are provided for you to load in. But while skinning can appear complicated, it's actually very straightforward. All that it takes to master the art is a little patience - and a lot of practice.