View Full Version : Correct way to mirror controls

05 May 2011, 09:45 PM
What is the correct way to mirror controls on a rig that when rotated with the same value (ie: rotateX=30) they move in mirrored fashion?


As you can see, the joints are mirrored. Ignoring the two nurbs circles for a moment, if I was to rotate the R and L in positive Y, they would rotate to the center. When I create two controls for the arms and constrain them to the R and L joints, they now lose their mirror movements because the controls would have their transformations frozen.

In order to maintain the mirrored movements, I need to leave transformations on the groups above the controls to make the controls appear to be mirrored... yes? If I simply scaleX = -1 for R_Ctrl_Group and constrain it, the joint flips because of the negative scale value. But if I set rotateX = 180 on the group (effectively copying the joints upside down Local Rotation Axis) this keeps the joint in place and sets the joints up to move in a mirrored fashion.

I guess what I'm trying to ask is... am I doing this right? Giving the controls parent groups transform values so I can achieve a mirrored movement effect? Do the joints LRA even need to be mirrored? If a joint is constrained to a control, is it's Local Rotation Axis even important since the control now overides its orientation?

I think I answered my own question in this post... but I just want to make sure I'm doing things since I've never actually asked about it, heh.


05 May 2011, 01:38 AM
Whoops, was meant to post this in the Maya rigging forum. Ahh well, if it wasn't already apparent, I'm using Maya.

05 May 2011, 06:14 AM
One way to do this is to temporarily parent your control's parent group to the joint it will control and then zero out its rotation and translation values. Now unparent it. The control should now behave as the joint. You could use direct connections to control the joint (no constraints necessary). This assumes that the control was created at the origin (nurbs circle, axis X), grouped to itself, then this group was used to position the control via the method described earlier.

CGTalk Moderation
05 May 2011, 06:14 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.