Eyelid rig won't copy pose over x axis properly

So I figure this has something to do with bone rolls, or something, but I can’t seem to figure out how to change it, and I’m worried that other parts of my rig will do this too now. So I was wondering if anyone out there can tell me how to fix this, and/or how to prevent it in the future.

http://fc01.deviantart.net/fs71/f/2013/112/2/c/untitled_by_jaderavenwing-d62n3i7.png

The eyelid right on the right of the image is posed how I want it to be, the one on the left has been copy/flip-pasted but… well you can see for yourself that it doesn’t look quite right lol.

I’ll attach the blend file as well.

Seacrow.blend (1.21 MB)

Still waiting on a response for this. Anyone know what’s wrong?

Does no one know how to fix this? Or no one taking the time to help?

Your problem has nothing to do with bone roll… but still bone roll creates problems further down the line. Your problem is due to the fact that Blender can’t read your mind… yet. :wink: Copying, mirroring is one thing. You have the bones you need… but they won’t move because that’s what you want. Alas! :smiley: However, you can ask Blender to move the bones of the right eyelid when you move the ones of the left eyelid. Copy Location Constraint.

First, let’s fix the bone roll. In Edit mode, I selected all the bones of the left eyelid (.L), [CTRL N] --> Z Axis (up) with the “X-Axis Mirror” option from the Tools shelf activated. No need to take special precautions, it won’t mess with the “Stretch To” constraint.

Then in Pose mode, select one of the vertical bones on the left eyelid, [SHIFT Right-Click] on its twin on the right (.R). [SHIFT CTRL C] --> “Copy Location”. Invert X, local space to local space. Then to the next, the next, the next, etc. While you’re at it, you can remove the “Limit Distance” constraint on the right bones (.R). It’s a waste of CPU since they now mirror the left bones (.L).

In the end, the right eyelid (.R) bones can be hidden because you can’t move them any more. Well, you can if you activate the Offset option on the “Copy Location” constraint.

The result of my work: Seacrow2.blend (1.22 MB)

Note that altho the mirror works fine on the bones, the mesh isn’t perfectly mirrored. I guess it’s a problem of weight paint.

Little tip: It’s better to set the Subsurf modifer after the Armature modifier. It’s flattens some of the wrinkles created by the armature. It find the result usually better this way.

Thank you. i was just selecting all the bones and changing the roll that way instead of just one side with mirror. Big difference.

And that was all I really needed lol, I don’t really need the eyelids to move exactly the same as the other when I move just one side, seeing as I’m going to need both sides for expressions and not just blinking. But I assume it’s just an easier way to move them at once if you need to instead of copy/pastemirroring them. Thank you though! I’ll definitely keep this in mind for future parts that need to move the same as the other.

And yea, I goofed a bit on the weight painting on the head bone. I’m not entirely sure how to fix it though. It hasn’t seemed to cause any problems for me though, so it might be okay as is.