Animating Behavior Parameters

You can animate most behavior parameters in order to change the parameter’s effect over time. You can animate behavior parameters using Parameter behaviors, or by keyframing them in the Keyframe Editor.

Applying Parameter Behaviors to a Behavior

You can animate a behavior’s parameter by applying a Parameter behavior. For example, you can apply the Oscillate Parameter behavior to the Drag parameter of the Orbit Around behavior, then adjust the Start and End values to increase from 0 to 8 over time. This results in the orbit of the object slowly decaying, causing the object to fall toward the center of the orbit.

Figure. Canvas window showing a behavior's parameter being controlled by another behavior.

For more information about adding Parameter behaviors, see Applying Parameter Behaviors.

Keyframing Behaviors

If you need more control when animating a behavior’s parameters, you can use keyframes. For example, you can keyframe the Drag parameter of the Orbit Around behavior to grow and shrink the object’s orbit many times, creating a much more complex animation path. Keyframing this animation path manually would be very difficult, but by keyframing a single parameter within a single behavior, you can create this effect with ease.

Figure. Canvas window showing a behavior's parameter being keyframed.

For more information about keyframing parameters, see Animating Behaviors.

Converting Behaviors to Keyframes

Behaviors are best suited for fluid effects in which precise timing is not a requirement. However, there may be projects in which you want finite control over the animated effects created with behaviors. If necessary, several of the behaviors can be baked into keyframes. This means that the animation curves created by the behaviors (which have no keyframes) can be converted into keyframed animation curves. You can then modify the keyframes in the Keyframe Editor to meet more precise timing requirements.

Because many (though not all) behaviors affect shared object parameters, when you convert a behavior to keyframes, all behaviors applied to the same object are also converted into keyframes. The keyframes are applied to the individual parameters that the behaviors originally affected. For example, the Gravity and Throw behaviors affect Position, so you could not convert the Gravity behavior to keyframes without affecting the Throw behavior. When behaviors that are applied to other objects affect the object being converted (for example, the Attractor or Repel behavior), their effect is baked into the object’s resulting keyframes value. The original behaviors remain applied to the other objects, but the resulting effect is not doubled up as a result of the keyframes combining with the behavior.

Note: You cannot convert many of the Simulation, Replicator, Particle, or Text behaviors into keyframes. Simulation behaviors such as Vortex can affect the parameters of all objects within a project, and baking such a behavior would create an overwhelming amount of keyframes. Remember, the beauty of such behaviors is that they automatically create very complex motion that would be too time-consuming to keyframe manually.

If a behavior (or an object with applied behaviors) can be baked, the Convert to Keyframes command appears in the Object menu when the behavior or object is selected. If the Convert to Keyframes command is dimmed, keyframes cannot be generated from the behavior.

To convert behaviors to keyframes
  1. Do one of the following:

    • Select an object that has behaviors you want to convert.

    • In the Inspector, select a behavior you want to convert.

  2. Choose Object > Convert to Keyframes (or press Command-K).

    A dialog prompts you to confirm the conversion to keyframes.

  3. Click Convert.

    All behaviors are converted into keyframes, which appear in the Keyframe Editor. The entire animation of the object is converted into keyframes, even if some of the behaviors fall outside of the object’s time range.

    Note: You cannot selectively convert individual behaviors. The Convert to Keyframes command converts all behaviors that are applied to an object at once.