OptionaldurationOptionaleasingEasing curve. Default 'ease-in-out' (smoothstep).
OptionaltrajectoryPath between the poses: a name ('orbit', the default, 'zoom-pan',
'arc', 'straight', 'swing', 'fly-through') or a parameterised
trajectory ({ kind: 'arc', lift: 0.8 }, { kind: 'via', via: pose }…).
See ./flight-trajectories.ts.
OptionalsceneCentre a swing turns about when it names no pivot (the scene centre).
OptionalspeedPace the flight instead of timing it: it lasts its path's perceived length divided by this speed (units per second), clamped to durationRangeMs. The length counts panning in view heights, zooming in log scale and turning in radians, so travel time follows the distance the viewer perceives — zoom included — for every trajectory.
Optionalduration[min, max] duration of a paced flight. Default DEFAULT_PACED_DURATION_RANGE_MS.
OptionalkeepKeep the CURRENT viewing direction and up vector; only the focus target, the distance to it, and the projection parameters (fov / zoom / planes) travel to the pose. The pose's own orientation is ignored.
This is how a flight composes with the orbit turntable: controls.update()
runs before the flight's frame callback, so the auto-rotation keeps
advancing the direction each frame and the flight simply carries that
direction to the new target — the spin never pauses, and landing does not
swing the camera to the author's azimuth. The waypoint driver sets it
whenever auto-rotate is active; a controller may ask for it explicitly.
Meaningless in fly mode (no orbit target) and ignored there in effect.
Flight duration in milliseconds.
0(or negative) applies the pose immediately. Default 1500.