The Auto Weight tab is a powerful tool for automatic weighting. Here you will find all the settings required to automatically weight an entire character.
For simple to medium complexity characters, the automatic weighting is usually more than sufficient to create good deformation for the character. Even with complex characters, the auto weighting provides a good basis that you can then fine-tune in the critical areas. Either way, auto weighting can save hours of effort.
Two modes are available for calculating weight:
Calculates the weight based on the distance of each point from the Joint. This is not only the fastest method but also the only one that ensures a weight for each object point. However, this method does not produce the best results in critical regions (e.g., at a shoulder).
This method checks to what degree a Joint is enclosed by geometry. Regions of mesh that lie behind other polygons from the point of view of the Joint will not be assigned to this joint, even if they lie closest to the Joint. This method requires the longest to calculate but leads to the best results in critical regions. For example, this method can be used to prevent the shoulder region from encompassing too much of the torso.
This method is, however, unable to weight all of the points if the geometry overlaps or if the joints are not placed accurately enough inside the mesh. Therefore, you should make sure to normalize the weights or correct problematic regions manually if this occurs.
In the image above you can clearly see the difference between Distance and Visibility. For most mesh regions the results will be the same but the weighting in the shoulder region is much better with Visibility. This is because only regions visible by the Joint will be taken into account instead of using a fixed distance for calculation.
In the second example above you can see how all points are weighted independently of the position of the polygons when in Distance mode. In contrast, Visibility mode weights only those points seen by the Joint. The outlying cylindrical hull is therefore not weighted at all.
Here you define the maximum number of Joints that can affect a given point.
Enable this option to also include non-bone joints during auto weighting. This means that Null joints and other type of objects (Null objects, primitives, etc..) can also be used. Note that regular joints are still the best type of objects to use when weighting a mesh, as they come with additional options not available in other object types (to control weight color previews, for example). The auto weighting algorithm tends to be more effective on joint objects, in general.
Auto Weight will only affect selected points.
Defines the transition between two neighboring Joints. The larger the value the softer the transition will be.
Here you can define the degree of visibility of a Bone for a specific Joint. If set to 100%, the Bone must be completely visible for it to be affected by weighting. If the Bone is not or only partly visible, the point will not be affected by that Joint. If set to 0%, the point will be weighted whether or not the mesh blocks the view of the Bone.
Defines the distance the points to be weighted can lie from one another and still be weighted. Higher values will increase the distance of the Joint’s influence correspondingly.
Starts the automatic weighting for your character using the options specified. In order for the automatic weighting to work, the object you want to create the weights for must have a Weight tag. This Weight tag must link to all the joints you want to use for the weighting.
Next, select either this object or any one of the joints that are linked to the Weight tag. Click on the Calculate button and in most cases you'll see an instant result. However, how long this takes depends on the complexity of the mesh, the auto weight mode chosen and the speed of your computer.
Holding the Shift key while executing this command will also auto-weight Null joints and joints that have no length (which are by default excluded from the calculation). This includes Joints with the Bone parameter set as Null, joints that are at the same position than their parent, and joints located at the tip of the joints chain.
All models on this page © Sébastien Florand