I have a human arm with 2 bones: UpperArm.Left and LowerArm.Left
I have 2 vertex groups: UpperArm.Left and LowerArm.Left
From about 1/4 above and below the joint (elbow), the vertex groups would be assigned a weight of 1.0.
But for the space near the joint, the vertices are influenced by both bones. The weight values of the vertices in this area need to add up to 1.0. So far a vertex just below the joint, the weight relative to LowerArm.Left needs to be 0.75, while the weight relative to UpperArm.Left should be 0.25.
Here’s my question: If i select the lower arm, then select a vertex right in the “bend” of the arm and assign a weight of 0.25. I then select the upper arm, and select that same vertex but this time I paint that vertex with weight 1.0 and opaque 1.0. Will the value of the weight relative to the upper arm be adjusted so that it is only 0.75 (even though the paint brush weight is 1.0) or will it overwrite the current weight value with 1.0? Is Blender “smart” enough to realize that the vertex already has a weight of 0.25 assigned to it and adjusts the weight relative to the new bone based on this?
I hope this makes sense. I have read some stuff on-line, but can’t nail down the behavior of weight painting to this point.
I’d say you’re thinking too hard on this. Don’t worry about things needing to “add up”. Place the weights you think and let Blender do the work for you. If the deformation isn’t what you like, increase or decrease the weight on the relevant verts.
If I do understand Blenders behaviour correctly, the weights will be summed up to 1.25 and than normalized to 1.0.
So the effective weight values will be 0.8 for upper.arm and 0.2 for lower.arm. If you want effective 0.75 and 0.25 you could paint directly with these values.
The reason I asked this type of question is because I will be importing these models into DirectX, and one of the books I read states that the total weight of a vertex influenced by N bones must add up to 1. I am trying to nail down Blender’s behavior when weight painting because one of the models I loaded last night crashed the DirectX Viewer.