0
$\begingroup$

I have created an empty to hold the relation of the resting position of a bone to a weapon. I am setting a copy transform constraint on the hand IK with this empty as the target. The constraint matches the location of the empty correctly, but I am getting odd rotation.

This is the hand IK (with mesh hidden) and empty. The empty is parented to the weapon.* Hand IK and Empty

This is the resting position that I am trying to achieve with the empty and copy transform constraint. This is so I can set the hand to the resting position relative to the weapon. Hand Rest

This is the result I get when adding the constraint with the empty as the target. Not what I want. Hand Constrained

I have tried matching the rotation of the empty to the rotation of the hand_ik in pose mode, but that gets me the results shown above. My best guess is this has to do with how quaternions work, but I don't know how to go about fixing it. How can I set the empty rotation in such a way that the hand will have the correct resting rotation when I add the copy transform to the hand ik?

$\endgroup$
1
  • $\begingroup$ Try using a ChildOfConstraint, it would be easier to set and use than copy rotation constraint $\endgroup$
    – Denis
    Mar 8, 2021 at 4:48

1 Answer 1

0
$\begingroup$

As mentioned by Denis, a child-of constraint would be easier. But it's still possible to answer your explicit question, "How can I set the empty rotation in such a way that the hand will have the correct resting rotation when I add the copy transform to the hand ik?"

  1. Get the hand posed how you'd like, without the copy transforms constraint.

  2. Give the empty a copy transforms constraint (world->world space) targeting the hand bone.

  3. Apply visual transform on the empty (ctrl A menu in object mode for me) then delete its copy transforms constraint. If necessary, register keyframes for the empty.

  4. Now give the hand bone the copy transforms constraint targeting the empty.

$\endgroup$

You must log in to answer this question.

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