Modifying Curves

Perhaps the most powerful and valuable feature that the Keyframe Editor offers is the ability to make changes to the curves between the keyframes. Of course, manipulating keyframes causes changes in the curves, but Motion gives you tools to control the interpolation and extrapolation of your parameter values themselves.

By using different preset mathematical algorithms or by using manual controls, you can dramatically alter the impact of your effects.

When you set the interpolation for a curve, you select the keyframe you want to modify. The method you choose determines the distribution of values through, into, or out of the selected keyframe.

To set an interpolation method for a keyframe
  1. Select the keyframe you want to affect.

    The keyframe turns white.

  2. Control-click the keyframe to display the shortcut menu.

    Figure. Keyframe Editor showing keyframe shortcut menu.
  3. Choose an interpolation method from the Interpolation submenu.

To set an interpolation method on a curve segment
  • Control-click the segment, then choose an interpolation method from the Interpolation submenu.

    You can set different interpolation methods for different segments of the same curve.

    Figure. Keyframe Editor showing a variety of interpolation methods.

When different interpolation methods are applied to the different segments of an animation curve, the methods that are used in the curve appear with a dash next to their name in the Interpolation submenu (in the Keyframe Editor parameter list). In the following image, all interpolation methods are applied to the selected curve.

Figure. Keyframe Editor showing Interpolation submenu of Animation menu.

The different interpolation methods are described in the table below.

Interpolation method
Example
Description
Constant
Figure. Example of Constant keyframe interpolation.
Holds the keyframe at its current value when applied to a segment or keyframe and then changes suddenly to the new value when the next keyframe occurs.
Linear
Figure. Example of Linear keyframe interpolation.
When applied to a keyframe, creates a uniform distribution of values through the keyframe from its two adjacent keyframes. When applied to a segment, creates uniform distribution of values between the two points.
Bezier
Figure. Example of Bezier keyframe interpolation.
Lets you manipulate the keyframe curve manually by dragging the handles. If multiple Bezier keyframes are selected, or Bezier is applied to the curve segment, the handles of all the selected keyframes are modified.
Continuous
Figure. Example of Continuous keyframe interpolation.
This method behaves like Bezier interpolation, but without access to the handles (they are calculated automatically). The parameter begins to change gradually, reaching its maximum rate of acceleration at the midpoint, then it tapers off slightly as it approaches the second keyframe. When applied to a keyframe, the segments before and after the keyframe are affected. When applied to a curve segment, the segment between to the two keyframe is affected.
Ease In
Figure. Example of Ease In keyframe interpolation.
A type of reverse-inertia effect, so that a value change slows coming into a keyframe. When applied to a curve segment, the value change eases into the segment.
Ease Out
Figure. Example of Ease Out keyframe interpolation.
Creates a typical inertia-like lag, so that a value change begins more slowly coming out of a keyframe. When applied to a curve segment, the value change eases out of the segment.
Exponential
Figure. Example of Exponential keyframe interpolation.
Creates an exponential curve between the current value and the next, changing the value slowly at first, then reaching its maximum rate of acceleration as it approaches the next value.
Logarithmic
Figure. Example of Logarithmic keyframe interpolation.
Creates a logarithmic curve between the current value and the next, changing the value rapidly at first, then slowing drastically as it approaches the next value.

Alternatively, you can apply an interpolation method to the entire parameter. In the following example, the Y Position curve (green) is currently set to Linear.

To change the interpolation method for an entire parameter
  • In the Keyframe Editor, click the Animation menu and choose a method from the Interpolation submenu.

    Figure. Keyframe Editor showing Interpolation submenu of Animation menu.

    The selected interpolation method (Constant in this example) is applied to the green curve.

    Figure. Keyframe Editor showing example of Constant interpolation.
To change the interpolation method for multiple parameters
  1. In the parameter list of the Keyframe Editor, Shift-click to select the parameters you wish to change.

  2. Click the Animation menu (in the Keyframe Editor) and choose a method from the Interpolation submenu.

    The selected interpolation method is applied to all of the selected curves.

    Figure. Keyframe Editor showing all parameters set to Constant interpolation.

Convert to Bezier

Bezier interpolation method is the most flexible, allowing manual modification of the curve. Motion lets you convert any keyframe into a Bezier keyframe quickly and easily.

To convert a keyframe into a Bezier keyframe
  • While holding down the Command key, drag the keyframe in the keyframe graph.

    Bezier handles appear and your mouse movement automatically controls one of the handles.

    Figure. Keyframe Editor showing a corner keyframe being converted into a Bezier keyframe.

Note: Command-clicking a Bezier point resets it to Linear interpolation.

To simultaneously modify the handles for more than one control point, Shift-click to select multiple points, then adjust the tangents. If there are no tangents on the point, drag it while holding down the Command key.

To break a handle
  • While holding down the Option key, drag the handle.

To “lock” the handle’s angle while modifying
  • While holding down the Shift key, drag the handle.

    Figure. Keyframe Editor showing a Bezier handle being moved while locked.

Extrapolation

In addition to setting interpolation for the areas between keyframes, you can define how Motion generates the values before the first keyframe and after the last one (extrapolation). When you set a such a method for a parameter, new keyframes are added beyond your original keyframes. This can be helpful when trying to extend the duration of an effect such as a moving background.

To apply the Before First Keyframe setting for a parameter
  • In the Keyframe Editor, open the Animation menu for the parameter you want to change, then choose an item from the Before First Keyframe submenu.

    Figure. Keyframe Editor showing Animation menu icon.
    Figure. Keyframe Editor inset showing Before First Keyframe submenu of Animation menu.
To apply the After Last Keyframe setting for a parameter
  • In the Keyframe Editor, open the Animation menu for the parameter you want to change, then choose an item from After Last Keyframe submenu.

The following table describes the extrapolation options available in the Before First Keyframe and After Last Keyframe submenus.

Extrapolation method
Example
Description
Constant
Figure. Example of Constant keyframe extrapolation.
(Default) The parameter remains at the exact value of the first and last keyframes in the extrapolated area.
Linear
Figure. Example of Linear keyframe extrapolation.
Extends the curve beyond the first and last keyframes uniformly, along the existing trajectory.
Ping Pong
Figure. Example of Ping Pong keyframe extrapolation.
Copies the curve and repeats it, alternating forward and backward.
Repeat
Figure. Example of Repeat keyframe extrapolation.
Duplicates the curve, applying it again and again.
Progressive
Figure. Example of Progressive keyframe extrapolation.
Extends the curve by repeating the existing shape of the curve, but rather than returning to the exact same values, it begins again from the existing end value.

Reversing Keyframes

Using the Reverse Keyframe option in the Keyframe Editor, you can quickly “flop” time by reversing the keyframes on a curve.

To reverse keyframes
  1. Select the keyframes you want to reverse.

    Figure. Keyframe Editor showing group of keyframes selected by draging.
  2. Control-click a selected keyframe and choose Reverse Keyframes from the shortcut menu.

    Figure. Keyframe Editor showing shortcut menu for a keyframe with Reverse Keyframes selected.

    The selected keyframes are reversed.

    Figure. Keyframe Editor showing reversed keyframes.

    Note: Reverse Keyframes flips the timing of all keyframes within a selected range of keyframes, regardless of their selection state.

    Figure. Keyframe Editor showing interim keyframes being reversed.

A minimum of two keyframes must be selected for the action to have any effect.

Generate Keyframes Command

Ordinarily, keyframe extrapolation occurs without actually creating any new keyframes. This lets you experiment with different methods. However, you can convert an extrapolation method into actual keyframes so you can further manipulate them. This is done using the Generate Keyframes command. You can choose how many of the extrapolation cycles you want converted into keyframes. Cycles after the number you chose are left in the extrapolated state.

Figure. Keyframe Editor showing an extrapolated path being converted into keyframes.
To convert extrapolation data into keyframes
  1. In the Animation menu, choose Generate Keyframes from the Before First Keyframe or After Last Keyframe submenu.

    The Generate Keyframes dialog appears.

    Figure. Generate Keyframes dialog.
  2. Choose the number of cycles you want to be keyframed.

  3. Click OK to confirm your selection.