I'm trying to get an IK rig set up for a lamp and have tried to use constraints on the objects in the scene.

enter image description here

What I'm trying to do is to tell the lower strut of this leg to copy the rotation of the strut next to it (which is parented to a bone in the armature), however, as soon as I set the target to the parallel leg, it flares out from the model in a way I didn't expect.

enter image description here

I've tried to change the axis in the 'Copy Rotation' constraint settings to no avail, checked the origins of the objects but I can't quite wrap my head around why it's behaving like this - any idea where I've gone wrong?

  • $\begingroup$ You might want to upload your .blend so others can more easily investigate what's wrong with it's rig. $\endgroup$ – someonewithpc Feb 19 '16 at 21:42

Examination on your blend file points to the fact that your lamp_arm_lower_A and lamp_arm_lower_B have mismatched local axis. Since their local axis are different when you copy the rotation from lower_A to lower_B the rotations are applied in the wrong places.

What I did to fix it.

  1. Select both lamp_arm_lower A and B.
  2. Hit CtrlA select "Rotation". This reset the local axis orientation.
  3. Now apply your "copy rotation" constraint. It should work.

Observe that the white axis belows to the lower_A. The colored axis belongs to the lower_B object. X is pointing towards the left for lower_B and X is pointing towards the right for lower_A. enter image description here

Here is the blend file after applying the corrections.

  • $\begingroup$ Excellent! Thank you. While I may approach this specific IK rig differently from here on, this should come in handy in the future if I come across a similar problem with any constraints. $\endgroup$ – Mixton Feb 20 '16 at 9:12
  • $\begingroup$ Yes I would suggest you pay great attention with the way local axis are oriented. They are the bad boys when it comes to rigging. $\endgroup$ – hawkenfox Feb 20 '16 at 9:16

From my experience, unless you have a good reason to use the Copy Rotation constraint, it is best to parent the object in question to the armature. If, as I believe to be the case here, there's no need to deform the mesh (i.e. all movable parts are separate objects), you can use the Bone parenting mode. Using this mode will make it so you're not required to use weight groups, which are irrelevant if the object is not to be deformed but only transformed.

  • $\begingroup$ Thanks for the reply - with this rig, my idea was to have the armature control the struts at the front of the model and use object constraints (Locked Track with empties as targets for the joints of the lamp and Copy Rotation to make the struts at the back to follow the struts at the front) to make the rest of the model follow along with the armature. I've uploaded my .blend file (thanks for the upload link). I'm a novice - if that - when it comes to rigging so I may be way off-base in regards to how to rig this particular lamp. Blend File $\endgroup$ – Mixton Feb 19 '16 at 22:19
  • $\begingroup$ Oh.. I see what you mean. Then this might not be a good approach, no. You see to have tried to use Inverse Kinematics but then gave up..? The driver bone has an IK constraint, but it's not setup. $\endgroup$ – someonewithpc Feb 19 '16 at 23:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.