0
$\begingroup$

I am trying to make an eye rig using the track to modifer for rigify. For some reason, the eyes location gets messed up after generating the rig.

Here is how I set up the modifier: enter image description here

This is what the eyes are supposed to look like: enter image description here

This is what the eyes end up looking like: enter image description here

I've tried fixing the rolls of the bones, turning off the deform for the rigify type, but haven't figured it out. The eye bone (which is parented to the head bone) tracks to an eyecontrol bone, which is parented to an eyemaster bone. The eyemaster bone is parented to the head bone.

$\endgroup$

1 Answer 1

2
+50
$\begingroup$

When we enable the display of axes (and hide a lot of stuff, so we can focus on what we're seeing) then it's obvious what the problem is. I'm comparing rest pose on the left with constrained pose on the right:

enter image description here

The track-to constraint is set to point the +Y axis at the target, while keeping the Z axis pointed up. But the Z axis on your rest pose points down. And the Y axis isn't aligned with your iris. Between these two facts, the bone rotates 180 degrees (about its Y axis) to meet the demands of the constraint and that means that the iris points cockeyed.

We'll have to fix both of these axes problems to start to solve the problem. I'll snap the tail of the bone to the center of the pupil to fix the direction its pointing, then I'll adjust the roll of the bone to point its Z axis up (I'll do this with "recalculate roll->view axis" operation from a numpad 7 view):

enter image description here

This still rotates the eye from the rest position, because I've changed the Y axis of the bone but haven't moved the target of the track constraint. But it rotates the eye in the right way. If we'd like, we could move the target (in edit mode) to a proper position to prevent this rotation without posing it.

However, you'll see that I disabled another constraint on the bone, a "copy transforms" constraint. It looks like you're using Rigify, and the best thing to do is to change the axes on the eye bones as described on the meta-rig and then regenerate the rig. Your meta-rig is not in the file provided. However, instead, we can also do the same adjustment to the axes of the target of the copy transforms constraint, and then it'll work fine:

enter image description here

(Or, it would probably be better to just put the constraint on the target of the copy transforms constraint, rather than on the "org" bone.)

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .