I have an issue with a rig (this is my first time rigging) where it requires the subtraction of the weights of many different Vertex Groups from the head (root) vertex group to make the rig function properly.

Here is an image showing what I wish to accomplish:

enter image description here

The result image is an inversion of the middle image. Do keep in mind that inversion will not cut it, since I have to remove more things from the head (root) vertex group other than just the jaw itself.

Using the remove button in the vertex group tab gives me this result

enter image description here

This is not satisfactory, as it removes the vertices from the vertex group, but does not subtract the weight values from it.

Google has not turned up anything so far.

Normalizing solves nothing as it still causes deformation when moving parts with Children i.e. opening and closing the jaw deforms the lower lip bones.

Removing the influence of the head (root) bone will also cause irregular behavior as well since Blender treats all weights which aren't zero as one regardless of the weight assigned due to the vertices needing a weight of one.

  • related: Select overlapping vertices from vertex groups – David May 22 '16 at 21:24
  • I don't think there is a command to do what you need. Maybe there is an addon but making a python script for it wouldn't be too hard. Have you tried the conventional way, ie. painting the weights making use of the possibility to hide faces and pose the bones while painting? – kheetor May 23 '16 at 7:03

The data transfer function may help you.

Tools panel showing the data transfer option

You will have to set your two objects as they overlap. Then use the "data" button in the "Data transfer" section.

Then choose "vertex groups" as shown here enter image description here

And then go to the operator options (bottom part of the first image here).

  • You can then choose de source : probably your group name.
  • Then the destination : "by name" for the same group name.
  • And the operator ("mix mode") : enter image description here

You also have an "invert" function here in weight paint mode : enter image description here

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.