On this page:
2.1 A frame does not depend on the previous frame
2.2 Durations and frame numbers are different
2.3 Several clocks may be involved
9.3

2 Scenes and time🔗ℹ

An operation returns a new Scene. It does not edit the Scene you passed in. This is what immutable means here. You can keep the old value and use it again, for example to make a second version of a lesson.

2.1 A frame does not depend on the previous frame🔗ℹ

To find a frame, Animate uses the Scene and the requested time. You can ask for the end first, then the middle, then the start. For a Scene long enough to contain these times:

(scene-sample scene 3/2)
(scene-sample scene 1/2)
(scene-sample scene 0)

This is why scrubbing and parallel rendering can use the same description. Your own factories and callbacks must follow the same rule: do not make their answers depend on a mutable counter, a previous frame, or uncontrolled randomness.

2.2 Durations and frame numbers are different🔗ℹ

Times are in seconds. Frame numbers start at zero. A two-second video at 30 frames per second has 60 frames, sampled at 0, 1/30, and so on through 59/30.

The exact endpoint at two seconds is useful for a still picture or a transition. It is not an extra 61st encoded frame. Add a hold when you want the finished picture to remain visible for longer.

2.3 Several clocks may be involved🔗ℹ

A storyboard has a whole-video clock. Each shot has a local clock. An embedded construction or mathematical presentation can have its own clock too. Revealing a slot changes its visibility; it does not start its embedded animation. See Slides, builds, and continuity for the slide rules and Slot actions for play-content.