1
$\begingroup$

Even with the "Only Insert Needed" Checked, keyframes are inserted on values that do not change.

My animation curves

by hitting "g" and "z" to move along Z axis, I only change that value, but keys are placed on the other curves as well

By hitting "g" and "z" to move along Z axis, I only change that value, but keys are placed on the other curves as well

How do I make it so only changed values are keyed?

$\endgroup$

3 Answers 3

1
$\begingroup$

You can also go to Preferences > Animation > and enable "Only Insert Available". "Only Insert Needed" might also work - I'm not quite clear on the difference.

$\endgroup$
1
$\begingroup$

Strictly spoken, this is not possible. However, you can at least avoid channels being auto-keyed that do not have a keyframe on them yet.

So first, as suggested by josh, insert a single keyframe on a channel you'd like to animate, say Location Z. Then you need to switch the Active Keying Set to Available, and next to the Auto Keying dropdown enable the little button to the right with the keys:

keying options

Note: since Blender 3.0, the little button has been replaced by the checkbox "Only Active Key Set" under the Auto Keying's popover:

auto keying option

Then, only the available channels will be keyed, not all three of them. If however you also have a single keyframe on the rotation, that channel will also receive a keyframe, regardless of the value having changed or not.

The Graph Editor also offers a function that will remove any non-value-change keyframes using a threshold, Clean Keyframes. This way you can quickly get rid of duplicates and duplicates of same keyframes on channels, or even channels that did in fact never change their value using the Clean Channels operator:

clean keyframes

$\endgroup$
1
  • $\begingroup$ Useful Answer, thanx! Another way could be lock the channels you don't want to get keyframes on. $\endgroup$ Mar 21, 2020 at 14:11
0
$\begingroup$

You can disable the "record" button of automatic keframe generation, move the object or bone, right click on the value you want to keyframe and use the "insert single keyframe" funcion.

enter image description here

$\endgroup$

You must log in to answer this question.

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