In comet, the camera doesn't sit still — it picks an orb on the rotating starfield and drifts toward where that orb will be when it crosses the camera plane. The orb dies, a new one is picked, and the camera replans. The chase happens entirely in x/y (orbs handle the z), so this lab strips it down to a top-down 2D view: same target motion as comet, same chase model, no perspective distractions.
Four panes run the chase model side-by-side at different
chase values so you can see how aggressively the camera
commits to the predicted death point.
Target orbits;
camera chases.
chase model: on each target handoff, the camera plans a
trapezoidal-eased trajectory from its current position to a "trust point"
= target + (deathPoint − target) × chase, executed over the
target's remaining lifetime. Camera arrives at the trust point precisely
when the target dies.
chase = 1.0: fully commits to the predicted death point — locks on at end-of-life.
chase = 0.5: lands halfway between current target position and predicted death.
chase = 0.2: barely deviates from where it was; minimal anticipation.
chase = 0.0: no chase; camera decays back to origin.
ramp: trapezoidal shape. 0 = pure linear (constant velocity, hard starts/stops). 0.25 = ¼ ramp-up, ½ cruise, ¼ ramp-down. 0.5 = degenerates to smoothstep (no constant middle).
target motion mirrors the actual chase target in
comet: a point on a fixed circle of random
radius, rotating at spin, with a finite lifetime. On
expiry, a new (radius, base angle) is picked.