Animation in Clara.io is created using key frames. A key frame describes the state of an object at a particular point in time, such as position, size, or color. By creating a series of these key frame states at different times we can simulate changes in state over time using calculations or ‘interpolations’.
Frames exist on the timeline, found below the viewports. The timeline shows the current frame as a red bar, and any key frames as orange bars. We can manually move the current frame marker or playhead by dragging or scrubbing it across the timeline. We can also drag key frames to a new time in a similar manner. We can also use the Play and Stop buttons to advance the timeline at a regular pace. By hovering over the playhead, we can get our current frame. By hovering over a key frame, we can get the frame on which it occurs as well as the properties and their values at that time.
Timeline settings can be adjusted under the timeline dropdown in the scene's properties. Here we can find options including the length of our timeline, its frame rate and playback speed, and the direction in which our animation plays.
In Clara.io, key frames do not describe the state of the entire object. Rather, we create key frames individually for each of an object‘s properties. Properties can exist in one of four states on any given frame. The following is a description of these states, as well as the property’s label color in brackets used to indicate this state.
You can see a live sample of the property states. Click on the Edit button from the interactive scene embedded below. When you're in the view port, select the bouncing ball to see how the Transform properties change colors according to the Keyframe status.
No Animation (White): Every property begins in this state. In this state the property has no animation data at any time.
Keyed on Current Frame (Red): In this state the property has a key frame on the current frame on the timeline. We can create key frames by clicking on the property label.
Pending Changes on Current Frame (Orange): In this state the property's value has been modified. If the frame is changed on the timeline, these changes will be lost. To keep the changes, we must confirm them by clicking on the property label.
Interpolated on Current Frame (Green): In this state we are currently between key frames. Since the state is not described by a key frame, Clara.io will calculate the property's value given the current time between the start and end key frames.
As described above, we use interpolation to get the values of properties between key frames. This way we are not required to animate every frame of the animation. Clara.io currently only supports linear interpolation, with more methods of interpolating arriving in future updates. Since linear interpolation is intuitive, it is easier for us to estimate the value on any given frame.
As an example, if we are changing an objects position, and we have position (0, 0, 0) at frame 0, and (10, 20, 100) at frame 20, then we can quickly figure that at frame 10 (50%), the position will be (5, 10, 50), and at frame 5 (25%), the position will be (2.5, 5, 25).
Using the above knowledge, we can now create animations. An animation is simply a series of key frames played in sequence. These can be created by moving the playhead to the desired frame, changing the desired property on the object, and then clicking the label's property.
As an example, we can make an object move in a loop. If our object starts at (0, 0, 0), on frame 0 we can set a key frame by clicking on the object's Transform > Translation property. Then, we can move the playhead to frame 10, move the object to (5, 0, 0) and click the Translation property again. Repeating this procedure for frame 20 at (5, 0, 5), frame 30 at (0, 0, 5), and frame 40 at (0, 0, 0) will create a 41 (counting 0!) frame square loop animation which we can view by clicking Play.