How do I make animations a steady speed?

When I make an animation, it always starts out slow, then speeds up, then slows down at the end. I cannot figure out how to fix this.

Simply go to the Animation Screen Layout:

Now select Channel > Extrapolation Mode > Linear Extrapolation (shortcut Shift + E):

And that should fix it for you.

If you look at the Graph Editor before doing this, you will see:

The beginning and end of the curve are levelled out, this is what gives you the slowing down effect. It is called a Bezier function. When you choose 'Linear Extrapolation' it makes the curve a straight line:

The straight line is extended in both directions giving you continued animation, whereby if you choose Interpolation, Key > Interpolation Mode > Linear (shortcut T):

What starts off as curves...

...results in straight lines between keyframes with no extension beyond:

• Just as an addendum, you can change the extrapolation mode by pressing T on your keyboard. Jul 1, 2013 at 23:15
• Hitting T changes interpolation mode. Extrapolation mode means how the motion continues outside the keyframes. Jul 2, 2013 at 4:54
• How do I "go to the Animation Screen Layout"? May 8, 2020 at 11:27

Go to the animation layout, and in the F-curve editor you can either hit T, to set the channel interpolation mode to linear, which affects the whole channel you have selected in the menu on the left side, or hit V to set the selected keyframe handles to vector mode. With setting single keyframe handles you have the possibility to use both kinds of interpolations.

Use a simple driver

For a constant linear animation can make a driver that is a linear function of frame.

For example to rotate an object about x at one revolution (2 * pi radians) per second in a scene with 24 fps, for ever...

Type the following

#2 * pi * frame / 24


directly into the X rotation euler channel.

. The hash # prefix signifies to blender it is a driver expression.

Once entered it will turn purple (driver color) and can be edited directly (removing the hash)

The variables frame, the current frame, and pi are known to the driver namespace.

Note this could ofcourse be reduced to

pi * frame / 12


I just changed extrapolation mode to Linear instead of Constant. Animation is now at a constant speed with no smoothing in/out.

• How do I "change the extrapolation mode to Linear"? May 8, 2020 at 11:26