How would I rig this?

I’m not so good at rigging non-humanoid things and I’m working on a mechanism that requires more rigging skill that I possess.

(See picture and .blend file) – I want to have a block that only moves straight up and down, attached to an arm. When the block moves down, the arm slides along the static brace at the bottom in a linear fashion (the ‘Y’ direction). Sounds simple, but I’ll be darned if I know how to rig such a thing. One other parameter is that the block is currently at its highest point, in other words, it can’t move higher to straighten out the arm – not that it matters.

Any help would be appreciated.


Attachments

how_to_rig.blend (558 KB)

Well, Sir, I would do it with an IK chain:


It is important to set the IK chain properties, like which bone can rotate and which bone can stretch. This is done in the IK properties panel as shown in the image.

Here is your file back rigged, just move the IK bone, it will only move along its own Local Z axis (Global Y). I didn’t parent the static brace to the rig, just “Bone” parent it to the IK bone.

Blend File: how_to_rig.blend (552 KB)

Cheers, Clock. :slight_smile:

Hey; Say “Arm” is the ‘child of’ “Block” so it copys its transforms (loc), “Arm” pivot point is where it is in the pic, drive "Arm"s rotation with "Block"s Z(-Z) location. Use a ‘Driver’ or “transformation Const”.

I don’t want to contradict clockmender’s idea. His method would work.

I would be more inclined to use ajcdfin’s apporach, but that is my preference.

Here’s the difference between the two…

clockmender’s idea is what I would call a pure rigging idea, it’s using bones and constraints to get the job done.

ajcdfin mentions using a transformation constraint. which I would avoid. Let’s just say it never really worked for me…

But the idea of using drivers is the method I would go with. With a driver it is easy to move one object/bone based upon another object/bone, but you have to work in the graph editor to use drivers. Not everyone’s cup of tea…

So use what method is easiest for you to implement.

Randy

PS - seems to me drivers lag 1 frame behind, so if that would be an issue, don’t use them.

Thank you all for the help.

Clock – your setup works very well, but I think I need to reverse the IK since the “Block” is the thing I need to move in order for this mechanism to work. You have given me a great head start.

ajcdfin – I could use drivers, but as Randy has said, they are complicated (for me) to set up and I think it’s overkill for this simple design. Thank you for responding.

Randy – good to know about the drivers lagging… I do plan to animate the final model, albeit a simple demo, nothing groundbreaking. Thanks for the insight.