Skip to main content

Module zoom

Module zoom 

Source
Expand description

Zoom regions — cinematic punch-ins on the project timeline.

A ZoomSegment is a value type: a window of project frames, a zoom amount, a target (ZoomMode), and an easing curve. At the render boundary (ED.16) each compiles to a keyframed wisp transform (scale + translate) applied to the screen sprite. Keeping the model wisp-free here means the zoom math is unit-testable without a GPU.

Structs§

ZoomId
Stable identifier for a ZoomSegment within a project, so edit operations (move / remove) can address one without relying on its index, which shifts as zooms are added and removed.
ZoomSegment
A cinematic punch-in over [start, end) project frames.

Enums§

EditEase
Easing curve for a zoom’s in/out animation. A deliberately small, serde-friendly subset of the full wisp_animation::Ease set (which includes a non-serializable function-pointer variant). The renderer maps these to wisp_animation::Ease at ED.13/ED.16.
ZoomMode
Where a zoom targets.