Timeline + animations — when things appear
Controlling the choreography: timeline tracks, ease curves, script cues.
Every element on a scene has a slot on the timeline. The ruler runs 0:00 → scene length, with major ticks every 1s and minor ticks every 200ms. You can change scene length from the inspector — narration adjusts to fit.
Setting a window
Click an element bar in the timeline; resize its left/right edges to set startAt + endAt. The transport toolbar at the top of the timeline exposes precise mm:ss inputs and a "Show until end" checkbox that pins endAt to the scene's end.
Animations panel
With an element selected, open the Animations tab in the left pane. Pick:
- Entrance — fade, slide, scale, fly-in from any edge, type-on (text only).
- Emphasis — pulse, shake, colour-shift. Fires when a script cue tagged
[emphasise]resolves. - Exit — mirror of entrance options.
Every animation carries a duration (ms), an ease curve (linear / ease-in / ease-out / ease-in-out / spring), and a delay. Defaults work for 90% of cases; the curve picker covers the rest.
Cues fire animations
When a script cue is set to [show:elem-id], the element's entrance animation plays the moment the narrator hits that word. The element's timeline window is otherwise ignored — the cue wins. This keeps speech and visuals in lockstep regardless of TTS speed.
Preview
The transport bar above the timeline plays the scene in place: spacebar toggles, comma/period step 200ms at a time. The "scenes player" button (top right) opens a full-runtime preview overlay — useful for checking transitions between scenes.