What's the purpose of normalize all?

I’m just wondering cause such a technique occurs in mathematics, but I don’t see why it’s needed in animation.

1 Like

Hi,

you probably refer to vertex weights ? Sometimes a vertex influenced by multiple bones ends up having a total weight above 1, which means it won’t follow the deforming armature exactly. Normalize fixes that by setting total weight to 1.

Hadrien

But what’s the purpose of what you just said? I’ve never personally had any problems with weights that total above 1. What is it a problem for specifically?

Say an arbitrary vertex on a character’s knuckle has .5 influence from the hand bone, .5 influence from the finger and .2 residual influence from the other finger next to it - move the entire character a few meters away and that particular vertex will be shifted from the rest of the hand 20% further (the residual weight).

I guess that could explain a few glitches I’ve had in the past, but is that specifically for game engines? Because it doesn’t seem like blender has that residual movement automatically.

Not specifically, but if I recall correctly “auto normalize” is checked by default, so overweighting should not happen when weight painting.

Normalized weights takes all weights and makes them equal 1.00. It’s important to only Normalize weights for vertex groups that are used by the armature modifier. Normalize All has a toggle for normalize all groups or only groups for deforming bones. A deforming bone in an armature is any bone that has Deform checked in it’s bone properties.

Blender will ALWAYS use normalized weights (internally) to determine how to move/deform a vertex. It does not force us to normalize those weights.

This can cause a lot of confusion because if a vertex has a weight of .001 and it’s only assigned to one bone, the vertex will act like it’s weighted 100% to that bone. The reverse is true as well. A vertex could be assigned a weight of 1.00 for four bones and that vertex would react like it’s weighted .25 (the normalized weight) to all four bones. This is also confusing because if you look at the weights in weight paint mode, it is red. However, it does not behave like a a 100% (1.00) weight.

You do not have to normalize weights, but if you do not, the visual weights you see (colors) in weight paint mode are not going to be a true representation of how Blender will move that vertex.

If you will be exporting the mesh or rig to another program, I would recommend normalizing weights before doing so. Depending on the program, it may not like having non-normalized weights and errors could occur.

Make sense?

Sorry to disagree, but this is not how it works. The vertex will not be “left behind”. It will deform like the weights are normalized. The screenshot below shows un-normalized weights on top, and normalized in the second. The vertices will behave exactly the same, but it will be far more confusing when in weight paint mode.


The bottom line is weights are a ratio. If the ratio works for the deformation you want, it’s a good ratio. Any weight between .00001 and 1.00 will act as a 100% weight if that vertex is weighted to a single bone. Assigning the vertex to two or more bones and the ratio becomes important. Normalizing weights will give a good representation in weight paint mode on how blender will deform that vertex.

Good luck!

2 Likes

Ah alright good to know. This is how it works in Maya, I carelessly extrapolated this knowledge to Blender.