Problem with X mirror in pose mode

Hello,

I’m new in this forum so please bear with me.

Not so long ago I started using blender. Now I’m facing one problem I couldn’t find a solution nor here nor on the other forums.
Basically I am using already rigged character and I am trying to animate it. So after I finished half the cycle of one animation I am trying to copy and paste x mirror for the other half. However it is not mirrored correctly.
When I tried mirroring default rigify human armature it mirrors fine, no problems what so ever so I guess it’s not a blender problem. (I’m using v2.75 btw)
I tried recalculating bole roll for every axis it still doesn’t work properly.
I attached screenshots from original position and flipped one.

Thanks in advance!

Attachments



It’s hard to say what the issue might be, without actually seeing the armature and meshes, but you might like to see if you have any unapplied rotations or scales on either the mesh or the armature, or do they have different origins, either of these two issues can cause problems when trying to animate a rig. Other than that - a blend file with the rig in it will need to be posted here or at www.pasteall.org under the blends section. You do not have to include all the details of your model, but I, or others will need to see the rig and have more details about the mesh if we are to find the answers, assuming that it is not a scale issue - did you scale the rig at any stage? Bone roll is very seldom the cause of errors like this by the way.

The fact that a Rigify rig did not do this is an indication that there is a problem with your rig, sorry but that is the case and we need to find out what and where the problem lies

You can check for unapplied scales or rotations by looking in the Armature’s Object panel, the Transform boxes will show these, basically all scales should be 1 and all rotations should be 0. To correct these -select the armature in Object Mode i.e. not Pose Mode or Edit Mode and key CTRL+A then select “Rotation and Scale”. If you ever want to scale a mesh or armature - DO IT IN EDIT MODE NOT OBJECT MODE, or apply the rotation and scale afterwards - this is the cause of many of the problems reported here… Blender is written to use Edit Mode to make Edits.

Also on your rig, I do not see a “Root” bone on the floor, there should be a root bone, to which any “IK target” bones or “FK primary” bones are parented, this gives the rig added stability and allows you to move the whole rig without disturbing poses. Check the Rigify rig - you will easily find the root bone on the floor between the feet.

Cheers, Clock.

PS, Where did you get the rig from?

It looks like you have not used the blender convention of .L and .R for right and left bones. The mirror functions will not work unless your bones are named correctly.

Luckily blender has a tool for renaming bones. You will find it under Armature> AutoName Left/Right. (View,Select, Add, Armature menu buttons in the lower 3d view.)

In edit mode, box select all of your right or left hand bones. Armature>AutoName Left/Right. Repeat for the other side. Done. This will append .L and .R to your bone names. Mirroring will work after that.

Good luck and welcome to the forums!

Guys thanks a lot for your replies!!

First, Clock, I reset rotation and scale. It still doesn’t work. About root bone I don’t know whats that. :\

Dan, I tried auto renaming bones with your commands, when I rename them then the x mirror doesn’t work at all. Not even a slight change.

I got my rig from maximo which as I read should be free for use. Since they have joined adobe there are no payment options on their website.

However I found something interesting. In the transform section the location of the bones of the rigify rig are all set to 0. However mine has some other different values for each bone.

Here is my rig and a screenshot of what I found may be the problem.
http://www.pasteall.org/blend/38114


After looking at the rig, you’ll need to do a bit more to get the names right. Since your bones are named LeftArm and Right Arm, the name flipping won’t work. They should be Arm.L and Arm.R. The first part of the name needs to be identical.

To rename it properly, select each bone on the left side and delete the “mixamorig:Left” part of the name. (this may take a while since all of the fingers, handbones, etc have this prefix.)

It should look like this: http://www.pasteall.org/blend/38119

(I did it for you.)

I’m not sure if this is useful to you if you will be exporting back to another program and if you need that naming convention to stay intact. This is the only way blender will recognize right from left and allow mirrored poses.

Good luck!

EDIT: And! after all of that, your mesh will no longer follow the rig until you edit all of the vertex group names (on each mesh item) to match your new bone names.

Dan you are the man!!! That worked!!!
Lucky enough the blender actually changes these vertex group names automatically and the mesh follows the rig, so it didn’t take much time.
Thank you!