worm
The animal's route and its choreography, as pure maths. It spawns nothing and reads no entity, so any slice may require it to ask where the animal is.
worm
The animal's route and its choreography, as pure maths. It spawns nothing and reads no entity, so any slice may require it to ask where the animal is.
M.cp is a Catmull-Rom through the whole 181 seconds — in from the north-west
deep under the dune sea, shallow enough to raise a ridge as it crosses the pan, a
slow hook under the rig, then straight up out of the ground at the breach point,
over in a two-hundred-metre arc, and back in at the impact point. It is sampled
once into an arc-length table, so M.at(u) is the point u metres along it.
M.headU(t) says how far along the route the head is at film time t,
interpolated with a monotone cubic through keys pinned to film.mark.* — move a
beat there and the animal moves with it. Every part of the body is then a
function of one number: a segment s metres behind the head sits at
M.at(headU(t) - s), wearing the radius M.radiusAt gives it. Nothing
accumulates and nothing integrates, so the film is the same on every run.
M.frame(u, t, radius) adds the animal's own motion to the rail — a travelling
wave that runs the length of the body, wider in the air than in the ground — and
returns the world position with the three axes that orient a piece there.
Two calls answer questions other slices ask: M.head(t) for where the head is
and how far out of the ground it has come, and M.groundTrack(t, back) for where
on the pan the buried body is running and how close under the surface it is.
Scoped to this part · feeds back into the world's score.