0
$\begingroup$

I am trying to make a linkage assembly using inverse kinematics. I have two arms parallel to each other which are to rotate with one another, while a link connects the two and is to stay parallel to the ground. When I rotate the linkage, the IK flips at 180° of rotation. How do I ensure the connecting link stays parallel to the ground while the two rotating arms are locked in rotation? I've attached a video for reference. Thanks!

https://1drv.ms/v/s!AqKAv0U30ygKhSG67bzjTSVed0mK?e=xVM6FR

$\endgroup$

1 Answer 1

0
$\begingroup$

The IK solver generally seeks to minimize the rotation of every bone involved in the chain, from either their rest orientation or from their orientation prior to the evaluation of the IK. When your angle passes through 180 degrees, the IK's first bone changes direction in order to minimize the rotation required of the second bone.

We can change this behavior by changing the rest orientation of the IK chain:

enter image description here

By rotating the resting IK chain, the second bone in the chain no longer has a preference for any particular direction relative to the first bone, and any rotation is going to be distributed evenly between both bones.

It's not strictly necessary that this be built into the actual rest pose of the bones. This can be achieved by giving the chain bones pose mode rotation instead. This is easiest to do numerically, after changing the bone rotation mode to an Euler mode.

However, your overall goal-- "the two rotating arms are locked in rotation"-- is not best served by IK here. Instead of IK, we can use a copy rotation constraint on one bone and a damped track on the other bone:

enter image description here

The bone that was the first bone in the IK chain now copies the world space rotation of our control, shown in the properties viewport; the bone that was the second bone in the chain now damped tracks the tail of our control.

$\endgroup$
1
  • $\begingroup$ Thank you so much for your thorough response! Working great now $\endgroup$
    – Hudock
    Aug 15, 2023 at 0:22

You must log in to answer this question.

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