problems trying to mirror weights

I’m trying to mirror vertex weights.

I’m trying to use the “Mirror vertex location & weight” script. Somehow, each L/R pair of vertex groups is assigned only to the bone on the right side. For example R.Bicep and L.Bicep vertex groups are both assigned to the same bone.

I have vertex groups named for each side of the mesh following a R.name / L.name format.

I hope this makes sense, I’m stumped
Anyone know whats going on here?

Get the script “Mirror Bone Weights” by Kakapo. It is faster and easier. It is the one I use.

“Mirror Vertex Location & Weight” is confusing. They should not have removed Kakapo’s script from the official distribution.

Ok, but Kakapo’s script will require renaming of my bones/vertex groups won’t it? I remember reading somewhere that it requires a name_L / name_R format.

I had not read your first post with enough attention and did not understand about your naming system.

Neither script will work if you use L|R as a prefix. You have to modify the scripts. Just look for this block in Mirror Bone Weights:


                if name[-2:] == ".R":
                    name = name[:-2] + ".L"
                elif name[-2:] == ".L":
                    name = name[:-2] + ".R"

And change it to this (or append this block):


                if name[:2] == "R.":
                    name = "L." + name[2:] 
                if name[:2] == "L.":
                    name = "R." + name[2:]

Many things rely on using L and R as suffix, like armature x-mirror and flipped pose copy and paste, so consider using that convention.

thanks! will give it a bash…

To correct myself. Ideasman’s script can use prefixes, but I guess “L.” and “R.” with a period after L or R don’t work, since they are not in the list of options (FLIPNAMES), so adding them can make the trick:

(From bpymodules/BPymesh.py)


FLIPNAMES=[\
('Left','Right'),\
('_L','_R'),\
('-L','-R'),\
('.L','.R'),\
]

You can mirror paint vertex weights now…

thanks daemon, unfortunately Ive already set up one side in this case.

toloban, i cut and past the script as you said, but no luck. I guess I will just go and rename manually. :cool:

I had this problem too, but the current script works in 2.43. I mirrored the left side, applied the mirror, selected all, ran the script with everything on except “right to left” and “Edge users”. Now everything is flipped, weights and all :slight_smile: