Bones / track-to / space difficulties

I was trying to simulate a steering rig using bones but I kept running into difficulties with the TrackTo modifiers and the space in which they operate.

Since I have a single armature, which has the same alignment as the global space, I expected all the modifiers to behave the same in local as in world space.
This is not true and I am unable to figure out how I should interpret the spaces which are selectable in the various modifiers.

I’ve uploaded a file to illustrate my problems:
http://houbenweb.nl/steering.blend

The idea is that when you rotate Armature.Bone along it’s local Z-axis, all the other parts move along.
This works somewhat, but only because I’ve set the trackTo mods to pose space. If I set them to Local space, the whole rig goes crazy… Also, I expected all the rotations to happen at the Y-axis, but this too seems to be invalid…

If someone could please enlighten me on what is going on exactly, it would be much apreciated :slight_smile:

You have a cyclic dependency problem going on there. To see this rotate Bone around a bit, tab into edit mode and tab back into pose mode, then check the console for the error message. On a windows machine, you can display the console from the help menu in the main header, on linux or osx machines, you need to start blender from the console/command prompt windows…

I can’t believe I am giving someone with the name of MacGyverismo advice… shouldn’t you be teaching me how to use my old smelly socks and a paper towel tube to make a nuclear bomb or something cool like that… :eyebrowlift2: hahaahahaha…

Randy

hmm, I still don’t understand why this console output isn’t integrated better… doesn’t seem like a difficult thing to do… redirecting stdout/stderr is pretty trivial…

I can’t believe I am giving someone with the name of MacGyverismo advice… shouldn’t you be teaching me how to use my old smelly socks and a paper towel tube to make a nuclear bomb or something cool like that… :eyebrowlift2: hahaahahaha…

yeah, keep an eye out in the tutorial section :wink:

Is there any way to solve this issue? I don’t understand why the cyclic dependencies aren’t an issue in world/pose space.

Hmm, I don’t have an answer on the console stuff, I just know how to deal with it.

Took a closer look at the file, the cyclic dependencies will cause a problem in this file and I’ve never really seen a case where they didn’t. To see it in your file, simply rotate the steer control to the right (or left, probably don’t matter) and cancel the rotation with the right mouse button. The rig fails, to reset, just enter edit mode & exit.

I see and understand what you are doing and why you are doing it, but basically, it’s wrong. You have things setup as they would be in real life. In rigging a mechanical object in blender, it’s better to ‘reverse engineer’ things, so to speak. Don’t think about how it should work, think about the end result and then seek a solution that achieves that. That’s what I did to your file on the left side.

Have a look at the file and if you have any questions, just ask. TBH, I could do away with the copy rotation constraint on Bone.003 and instead just make it an unconnected child of Bone.004.

Randy

Attachments

steering.blend (259 KB)

Why is there no IK constraint in the constraint menu?
Using spacebar I am able to add one, but I would not have figured this out myself…

TBH, I could do away with the copy rotation constraint on Bone.003 and instead just make it an unconnected child of Bone.004.

That is a better solution, this was previously not possible because the entire rig was failing.

Using these IK solvers I seem to have gotten a working rig, thanks revolt_randy!

With the bone selected, in pose mode, in the bone constraints panel (icon of a bone & chain link) the ik constraint is under tracking, under its full name ‘Inverse Kinematics’…

Randy