Interpolation is the process of filling in the unknown data between two known values. You set keyframes to specify a property’s values at certain key times. After Effects interpolates values for the property for all times between keyframes.
Because interpolation generates the property values between keyframes, interpolation is sometimes called tweening. Interpolation between keyframes can be used to animate movement, effects, audio levels, image adjustments, transparency, color changes, and many other visual and audio elements.
After you create keyframes and motion paths to change values over time, you may want to make more precise adjustments to the way that change occurs. After Effects provides several interpolation methods that affect how the in-between values are calculated.
Temporal interpolation is the interpolation of values in time; spatial interpolation is the interpolation of values in space. Some properties—such as Opacity—have only a temporal component. Other properties—such as Position—also have spatial components.
Using the value graph in the Graph Editor, you can make precise adjustments to the temporal property keyframes you’ve created for your animation. The value graph displays x values as red, y values as green, and z values (3D only) as blue. The value graph provides complete information about the value of keyframes at any point in time in a composition and allows you to control it. In addition, the Info panel displays the temporal interpolation method of a selected keyframe.
When you apply or change spatial interpolation for a property such as Position, you adjust the motion path in the Composition panel. The different keyframes on the motion path provide information about the type of interpolation at any point in time. The Info panel displays the spatial interpolation method of a selected keyframe.
When you create spatial changes in a layer, After Effects uses Auto Bezier as the default spatial interpolation.
To change the default to linear interpolation, choose Edit > Preferences > General (Windows) or After Effects > Preferences > General (Mac OS), and select Default Spatial Interpolation To Linear. Changing the preference setting does not affect keyframes that already exist or new keyframes on properties for which keyframes already exist.
A. Linear B. Auto Bezier C. Continuous Bezier D. Bezier E. Hold
In some cases, the Auto Bezier spatial interpolation for Position keyframes can cause undesired back-and-forth (boomerang) motion between two keyframes with equal values. In such a case, you can change the earlier keyframe to use Hold interpolation or change both keyframes to use Linear interpolation.
Aharon Rabinowitz provides a pair of video tutorials on the Creative COW website that describe the issue and solution for the boomerang motion problem that arises from unintentionally having Auto Bezier spatial interpolation set for keyframes of equal value:
Antony Bolante provides information and illustrations about keyframe interpolation in an article on the Peachpit Press website.
In layer bar mode, the appearance of a keyframe icon depends on the interpolation method you choose for the interval between keyframes. When half of the icon is dark gray , the dark half indicates that no keyframe is adjacent to that side, or that its interpolation is overridden by the Hold interpolation applied to the preceding keyframe.
By default, a keyframe uses one interpolation method, but you can apply two methods: the incoming method applies to the property value as the current time approaches a keyframe, and the outgoing method applies to the property value as the current time leaves a keyframe. When you set different incoming and outgoing interpolation methods, the keyframe icon in layer bar mode changes accordingly. It displays the left half of the incoming interpolation icon and the right half of the outgoing interpolation icon.
To toggle between keyframe icons and keyframe numbers, select Use Keyframe Icons or Use Keyframe Indices from the Timeline panel menu.
A. Linear B. Linear in, Hold out C. Auto Bezier D. Continuous Bezier or Bezier E. Linear in, Bezier out
All interpolation methods used by After Effects are based on the Bezier interpolation method, which provides direction handles so that you can control the transitions between keyframes. Interpolation methods that don’t use direction handles are constrained versions of Bezier interpolation and are convenient for certain tasks.
To learn more about how different interpolation methods affect temporal properties, experiment by setting up at least three keyframes with different values for a temporal layer property—such as Opacity—and change the interpolation methods as you view the value graph in Graph Editor mode in the Timeline panel.
To learn more about how different interpolation methods affect a motion path, experiment by setting up three keyframes for a spatial property—such as Position—with different values on a motion path, and change the interpolation methods as you preview the motion in the Composition panel.
To change interpolation methods, right-click a keyframe, select Keyframe Interpolation from the menu that appears, and then select an option from the Temporal Interpolation menu.
To clarify the examples in the following descriptions of interpolation methods, the result of each method is described as if you had applied it to all of the keyframes for a layer property. In practice, you can apply any available interpolation method to any keyframe.
No interpolation is the state in which a layer property has no keyframes—when the stopwatch is turned off and the I-beam icon appears in the Timeline panel under the current-time indicator. In this state, when you set the value of a layer property, it maintains that value for the duration of the layer, unless overridden by an expression. By default, no interpolation is applied to a layer property. If any keyframes are present for a layer property, some type of interpolation is in use.
Linear interpolation creates a uniform rate of change between keyframes, which can add a mechanical look to animations. After Effects interpolates the values between two adjacent keyframes as directly as possible without accounting for the values of other keyframes.
If you apply Linear interpolation to all keyframes of a temporal layer property, change begins instantly at the first keyframe and continues to the next keyframe at a constant speed. At the second keyframe, the rate of change switches immediately to the rate between it and the third keyframe. When the layer reaches the final keyframe value, change stops instantly. In the value graph, the segment connecting two keyframes with Linear interpolation appears as a straight line.
Bezier interpolation provides the most precise control because you manually adjust the shape of the value graph or motion path segments on either side of the keyframe. Unlike Auto Bezier or Continuous Bezier, the two direction handles on a Bezier keyframe operate independently in both the value graph and motion path.
If you apply Bezier interpolation to all keyframes of a layer property, After Effects creates a smooth transition between keyframes. The initial position of the direction handles is calculated using the same method used in Auto Bezier interpolation. After Effects maintains existing direction handle positions as you change a Bezier keyframe value.
Unlike other interpolation methods, Bezier interpolation lets you create any combination of curves and straight lines along the motion path. Because the two Bezier direction handles operate independently, a curving motion path can suddenly turn into a sharp corner at a Bezier keyframe. Bezier spatial interpolation is ideal for drawing a motion path that follows a complex shape, such as a map route or the outline of a logo.
Existing direction handle positions persist as you move a motion-path keyframe. The temporal interpolation applied at each keyframe controls the speed of motion along the path.
Auto Bezier interpolation creates a smooth rate of change through a keyframe. You may use Auto Bezier spatial interpolation to create the path of a car turning on a curving road.
As you change an Auto Bezier keyframe value, the positions of Auto Bezier direction handles change automatically to maintain a smooth transition between keyframes. The automatic adjustments change the shape of the value graph or motion path segments on either side of the keyframe. If the previous and next keyframes also use Auto Bezier interpolation, the shape of the segments on the far side of the previous or next keyframes also changes. If you adjust an Auto Bezier direction handle manually, you convert it to a Continuous Bezier keyframe .
Auto Bezier is the default spatial interpolation.
Like Auto Bezier interpolation, Continuous Bezier interpolation creates a smooth rate of change through a keyframe. However, you set the positions of Continuous Bezier direction handles manually. Adjustments you make change the shape of the value graph or motion path segments on either side of the keyframe.
If you apply Continuous Bezier interpolation to all keyframes of a property, After Effects adjusts the values at each keyframe to create smooth transitions. After Effects maintains these smooth transitions as you move a Continuous Bezier keyframe on either the motion path or the value graph.
Hold interpolation is available only as a temporal interpolation method. Use it to change the value of a layer property over time, but without a gradual transition. This method is useful for strobe effects, or when you want layers to appear or disappear suddenly.
If you apply Hold temporal interpolation to all keyframes of a layer property, the value of the first keyframe holds steady until the next keyframe, when the values change immediately. In the value graph, the graph segment following a Hold keyframe appears as a horizontal straight line.
Even though Hold interpolation is available only as a temporal interpolation method, the keyframes on the motion path are visible, but they are not connected by layer-position dots. For example, if you animate the Position property of a layer using Hold interpolation, the layer holds at the position value of the previous keyframe until the current-time indicator reaches the next keyframe, at which point the layer disappears from the old position and appears at the new position.
You can easily freeze the current frame for the duration of the layer using the Freeze Frame command. To freeze a frame, position the current time indicator at the frame you want to freeze. Make sure that the layer is selected and then choose Layer > Time > Freeze Frame. Time-remapping is enabled, and a Hold keyframe is placed at the position of the current time indicator to freeze the frame.
If you previously enabled time-remapping on the layer, any keyframes you created are deleted when you apply the Freeze Frame command.
You can use Hold interpolation only for outgoing temporal interpolation (for the frames following a keyframe). If you create a keyframe following a Hold keyframe, the new keyframe uses incoming Hold interpolation.
To apply or remove Hold interpolation as outgoing interpolation for a keyframe, select the keyframe in the Timeline panel, and choose Animation > Toggle Hold Keyframe.
You can apply and change the interpolation method for any keyframe. You can apply changes using the Keyframe Interpolation dialog box, or you can apply them directly to a keyframe in layer bar mode, in a motion path, or in the Graph Editor. You can also change the default interpolation After Effects uses for spatial properties.
For information on using Easy Ease controls to automatically ease speed between keyframes, see Controlling speed between keyframes.
The Keyframe Interpolation dialog box provides options for setting temporal and spatial interpolation and—for spatial properties only—roving settings.
Preserves the interpolation values already applied to the selected keyframes. Choose this option when multiple or manually adjusted keyframes are selected and you do not want to change the existing settings.
If you selected keyframes of a spatial layer property, choose one of the following options for Spatial Interpolation:
If you selected keyframes of a spatial layer property, use the Roving menu to choose how a keyframe determines its position in time, and then click OK:
Preserves the currently applied method of positioning the selected keyframes in time.
Rove Across Time
Smooths the rate of change through the selected keyframes by automatically varying their position in time, based on the positions of the keyframes immediately before and after the selection.
Lock To Time
keeps the selected keyframes at their current position in time. They stay in place unless you move them manually.
For more information on smoothing the rate of change through selected keyframes, see Smooth motion with roving keyframes.
- Click the keyframe with the Convert Vertex tool to toggle between linear and Auto Bezier interpolation.
- Select one or more keyframes, and then click the Hold, Linear, or Auto Bezier button at the bottom of the screen to change the interpolation method.
A. Convert selected keyframes to Hold B. Convert seleced keyframes to Linear C. Convert selected keyframes to Auto Bezier
In the Graph Editor, keyframes that use Bezier interpolation have direction handles attached to them. You can retract, extend, or rotate the direction handles to fine-tune the Bezier interpolation curve in a value graph. You can retract or extend the direction handles to fine-tune the curve in a speed graph.
By default, when you retract or extend a direction handle, the opposite handle on the keyframe moves with it. Splitting direction handles makes the two direction handles attached to a keyframe behave independently.
- To retract or extend direction handles, drag the direction handle toward or away from the center of its keyframe with the Selection tool.
- To split direction handles, Alt-drag (Windows) or Option-drag (Mac OS) a keyframe with the Selection tool. You can also Alt-drag (Windows) or Option-drag (Mac OS) outside a keyframe to draw new handles, whether or not handles already exist.
- To manipulate the direction handles of two neighboring keyframes simultaneously, drag the value graph segment between the keyframes.