Playback

The examples below show a single tile in isolation — Mode and the delays shape one cycle's timing, and a full grid mid-stagger would only make that harder to see. In the app, every tile in the grid follows this same cycle, just offset in time by Time shift.

Mode

What it does: decides what happens at the end of the sequence, once a tile has fully played through.

Loop Ping-pong
Loop mode Ping-pong mode

Ping-pong is a good fit when a sequence looks a little jarring snapping from "fully in" back to "fully empty" — bouncing back out is often the more natural-looking choice, at the cost of taking twice as long to complete both directions.

Start delay & End delay

What they do: add a pause — a hold — on the first frame (Start delay) or last frame (End delay) before playback continues. In Ping-pong mode, these hold the two opposite ends of the bounce (the "empty" trough and the "full" peak) independently.

No delay Start delay only Start + End delay
No delay Start delay only Start and End delay

Both delays lengthen the shared loop cycle rather than sitting outside it — which matters once Time shift is in play. Every tile is reading its position from the same overall cycle, so if you add a hold, every phase-shifted tile still stays in sync relative to each other; the whole grid just gets a shared breathing moment rather than any one tile pausing on its own.

⚠️ Loop/Ping-pong and these delays are honored by GIF, APNG, and MP4 exports (and both sprite sheet formats), but a PNG sequence never has them baked in — a folder of numbered images has no concept of timing at all, so it's always a plain forward loop. See Exporting.