[Solved] How to scale the Location part of all keyframes in an animation?


I have applied scale to my animated model/armature (select all, ctrl+A [apply] -> Scale), but the translations of the animation weren’t scaled.
It’s the same problem as in this ticket: https://developer.blender.org/T41699
–> it lead to a feature request which is still not implemented

So how can I fix my animation manually?
I think I have to scale the Location (translation) part of every keyframe, but I can’t find any info how to do that.


Best is to create a new bone at the root of your hierarchy and scale it - but your rig needs to be scalable of course. Or… well yes I guess scaling the translate values would work. That would happen in the graph editor. Position the cursor at the starting position of your character, select all keyframes, hit s and enter a number.

Here is my workaround: https://blenderartists.org/forum/showthread.php?420669-Armature-apply-scale-without-destroy-the-animations

But it’s a bit tedious and I would like this issue to be fixed also

Thank you, managed to do it like this: https://blender.stackexchange.com/a/41521
After that, there is still a weird constant offset, but I can remove that by using G to grab and move all frames in the Graph Editor.

@StroBlend I guess a pro could write a script for this quite easily. I have only a few animations so it’s not terrible.