Mirror Vertex Groups

I don’t know about you but I always have problems with the “Mirror Vertex Group” and “Mirror Vertex Group (topology)” tools. In fact, I never understood how they’re working.

So I write this little script to copy the vertex group from one side to the other. It’s not very complex and not very great but it works.

You can download it from https://github.com/LWH-21/blender-mirror-add-on Documentation is included.

Please let me know if you find bugs or have suggestions for enhancements.

1 Like

Finally normal mirroring)
Works fine for me.
Is it possible to make it quicker?

Well, it’s true that the speed was not my main preoccupation … But I promise, I’ll optimize the script.

I’m definitely trying this addon, thanks for your work.

FWIW I think I found an issue with the built in Mirror Vertex Group, which certainly caused me some difficulty. The steps listed in the wiki don’t work (or didn’t for me…).

Here’s what the wiki says:

[TABLE=“class: NiceTip”]

Mirror to opposite bone

If you want to create a mirrored weight group for the opposite bone (of a symmetric character), then you can do this:

  • Delete the target Vertex Group (where the mirrored weights will be placed)
  • Create a copy of the source bone Vertex Group (the group containing the weights which you want to copy)
  • Rename the new Vertex Group to the name of the target Vertex Group (the group you deleted above)
  • Select the Target Vertex Group and call the Mirror tool (use only the Mirror weights option and optionally Topology Mirror if your mesh is not symmetric)

[/TABLE]

This gave me all sorts of weirdness, but when I tried swapping the third and fourth steps above, it behaved as expected.

Anyway looking forward to trying this new option. Cheers.

Good luck with your addon.

I just wanted to clarify how the native Blender mirror weights works. If you have a symmetrical model and weight painted on 1 side (left or right). You need to use “Vertex Selection Masking” button on the 3dview header. Press that button and select the empty side (the vertices you want to copy to). So for example you have painted right side , press vertex mask button and select the left side of the model (you can see vertices are highlighted in yellow). Now go to vertex group menu and press down arrow and choose Mirror Vertex Groups. There you will see in view port that right side is copied to the left side.

Now there is also a “Face Selection Masking” button, it doesn’t do the same thing. If you choose faces instead of vertices and use “Mirror Vertex Groups” Blender will swap the weights to the selected faces…

So keep in mind vertex selection mode mirror copies; while face selection mode mirror swaps the vertex group… Hope this helps someone.

Read Selection Masking on this page > http://wiki.blender.org/index.php/Doc:2.6/Manual/Modeling/Meshes/Vertex_Groups/Weight_Paint

Cheers

Unfortunately I didn’t have success with my attempt at using this addon on a biped rig just now. All of the created vertex groups turned out somewhat weird.

The model is mostly symmetrical and certainly in topology (except for his face). Let me know LWH if you want my blend to play with. Cheers!

From this:


To this (etc.):