Hello Developers!
We are excited to announce the beta release of the new curve API for animation authoring. This is the first step towards our vision to enable animation curves in Studio. With this new curve-based format, developers can now independently animate translation and rotation components and translations can be further broken down to single channels (i.e. only X, Y or Z components). The underlying curve representation for animations is different from the current keyframing approach, but for this beta release, we are keeping the UI consistent with the dope sheet developers are used to. A full-fledged curve editor will become available in a future release.
Even though keyframing and curve editing is consistent, the new curve-based format is different from the current keyframe-only approach. Existing animations need to be promoted to the new format in order to enable single-channel animations and access the underlying curve-based format. This promotion step is a one-way change and cannot be reversed. When experimenting with this beta release, we recommend developers try it out on test animations or copies of existing ones to avoid accidental overwrites.
To promote an existing keyframe animation to the curve-based format, you need to load an existing animation or create a new one and then select the “Promote to Channel Animations” from the Animation Editor menu options.
Figure 1: Promoting an animation to use the new curve-based representation.
When an animation is successfully promoted to a curve-based format, you will notice the additional options to create single-channel animations for individual components. You can perform all the usual operations such as editing, scaling and deleting keyframes in the editor. It will look and feel like the usual dope sheet editing, but the underlying representation of the animation data is completely new and much more flexible. This will become more evident when we release the curve editor as well.
Figure 2: You will have the option to create a single-channel animation after the promotion step.
On top of the changes that we made for the X, Y and Z components, we have modified the way we handle easing. Each channel is divided into segments, and each of these segments can either be constant, linear, or cubic. You may already be familiar with constant and linear, but cubic is slightly different and is the default setting. When the curve editor becomes available, it will offer complete control over the curve. Bounce and Elastic easings, however, have been removed and replaced with tools to generate equivalent curves.
After selecting two or more keys in a channel, you can select “Generate Curves” in the right-click menu, and then follow the submenus to choose which curves to generate. The Animation Editor will automatically create the keys needed to represent the former Bounce and Elastic interpolations, so you still get the same behavior and flexibility as you have now.
Figure 3: Bounce and elastic easings have been replaced with tools to generate equivalent curves.
What comes next?
We are working on the full-featured curve editor that will be available together with the current dope sheet used for keyframing animation. Soon our animators will have the option to create and edit animations using curves, having more control and options to achieve their creative goals.