air
Slice C of *Mother Liquor* — everything in the film that is made of air.
air
Slice C of Mother Liquor — everything in the film that is made of air.
The cold vapour, in three parts that do not overlap: a sheet pouring over the front edge of the worktop, a pool creeping south across the vinyl toward shot 9's floor camera, and a thread already leaving the fume hood in the first frame of the film. Dust hanging in whatever light there is. The bunsen — an inner cone and an outer mantle drawn as luminous shells, a few sparks, and the heat above them that takes the tiled splashback apart. The beam the hood strip cuts through the vapour. The rings a dosed drop leaves on the liquid. Condensate beading and running on the glassware rack's front pane. The extract fan. And, once the film is under the surface, the motes and the convection currents inside the liquid.
Registered as Film.register("air", …) at order 30. Serves shots 7, 8 and 9
outright and supports 1, 5, 6, 12 and 13.
The clock
tick(t, dt, shot, u) is the only time in here. Every emitter is stepped by hand
with :update(dt) rather than left on the engine's own particle clock, and every
shader in demo/shaders/air/ reads its time from per-instance lane 0 rather than
from uniforms.time. That is what makes the air identical on a second pass of
the film, and it is why the air moves in edit mode as well as in play.
An emitter that is not spawning and whose last particle aged out a full lifetime ago is skipped rather than stepped, so each one costs a compute dispatch only across the part of the film it is actually in.
What it draws with
| Asset | Where |
|---|---|
demo/shaders/air/heat_shimmer | the hot air over the burner, as the scene bent behind it |
demo/shaders/air/flame_shell | the inner cone and the mantle, as luminous shells |
demo/shaders/air/light_shaft | the hood lamp's beam where it crosses the vapour |
demo/shaders/air/condensate | beads and runners on the rack pane, each one a lens |
demo/shaders/air/drop_rings | the travelling wave a drop leaves on the liquid |
demo/materials/air/* | one material per shader, plus the two particle sprites |
The particle emitters are recognised as this stage's own by the material prefix
demo.materials.air., which is how a rebuild collects the emitters a previous
one left behind — emitters are not entities, so nothing takes them away with the
scene.
Marks it reads
Film.MARKS.bunsen, .hoodMouth, .hoodLamp, .rack, .meniscus,
.extractFan, .interior; Film.ROOM.benchTop, .benchFrontZ, .halfX,
.halfZ; and Film.PALETTE.vapour, .bunsenCone, .bunsenMantle, .lumin,
.liquidViolet. Nothing here restates one.
The flame is seated on the top of the barrel the room slice builds at
Film.MARKS.bunsen, which ends 15 cm above that mark; Film.MARKS.bunsenTip
then falls inside the inner cone, which is where shot 7 is pointed.
Scoped to this part · feeds back into the world's score.