How do I record keyframes for a bone that is controlled by another bone?

I have two bones that I want to record keyframe data for that are controlled by a control bone. I will be using the position data for those bones to control the movements of real world servo motors.

But when I do my keyframing, only the controlling bone gets recorded with a value, even though I have the other bones selected as well. A keyframe gets recorded for the servo bones, but there is no change in any of the rotation values, even though I can see them rotating on the screen?

This is part of a mechanical mechanism, so I’d prefer to just have one control bone for these two bones.

Thanks in advance

This process is called baking and if that’s confusing it’s because “baking” refers to several completely different operations in Blender. It’s also confusing because this feature appears to be completely hidden! You have to bring up your search menu and type in “Bake Action” in order to find it.

You will see a change in keyframe values of constrained bones iff you choose “visual location”, “visual rotation”, etc. This is another method that can work instead of baking the action. By default, blender records the transform values for where a bone would be if it weren’t constrained, then the constraints are calculated, and the resulting position of the bone is called the “visual transform”. Take care when keying this transform as, depending on what constraints you have, it may end up being added to the constraint result, which will give you bad results.

1 Like

@Rocketman! That worked! Thank you! OMG that was so simple to fix and so frustrating to deal with

@Rocketman so should I be baking all the bones at the same time?? When I tried baking just the servo bones blender created a new action… ?

also I am exporting this as an FBX and baking the animations into the file… maybe I don’t need to bake the servo bones separately?

When you mentioned the second option, of choosing “visual location” etc. where do I choose that?

I’m not too concerned about values getting added, since I have to do some math on the other end to conform my blender rotation values to my servo rotation values… as long as I have SOME kind of relationship between what I am animating and what data gets outputted…

Pay attention to the settings you use when baking. There are options for only baking selected bones and whether to create a new action or overwrite the existing one.

When exporting to FBX, visual transforms are baked by default. So you may not even need to do any of this.


awesome thank you so much!

1 Like