cloudsurf: restage the five shots, key the rings to their chimes, grade it
---
S6: the hall reads and the finale builds
DISCHARGE
- tes_chrome compiles: the normal-map textureSample was taken inside a
per-pixel branch, which WGSL refuses as non-uniform control flow, so the
pipeline was never built and the toroid — the hero object of the part —
rendered as the magenta failed-shader checker for the whole 22 seconds.
The sample is hoisted above the guard and the result selected instead.
This was also a browser parity blocker: the same rule is enforced there.
- 22.500 s, 18 bars: shots retimed 6.5 / 5.5 / 5 / 5.5.
- The sky, sun, ambient and clear colour move out of build and into enter,
so a prebuild a second before the cut cannot paint the outgoing part.
- The hall is lit: moonlight through the six high panes as six aimed spots
and as a wash in tes_wall, a truss fill and one wide air fill, ambient and
moon raised, the hemisphere floor lifted off zero, and the night air the
hall's depth reads through taken off near-black. Measured at the shot-2
station, local 8: p50 7 -> 22, crushed 0.43 -> 0.2196 of which 0.2194 is
the letterbox itself. Baseline was p50 0, crushed 0.50 to 0.55.
- The strike fallback asked whether the FILM had another stab anywhere,
which is true right through a part the grid never covers; it now asks
whether one has landed recently, so a scored run never free-runs and an
unscored one is never silent.
- exit stops the arc dispatch and pcalls both pass removals.
- The two drums that read as unfinished props are industrial enamel.
ASCENSION
- build and enter are separated. slot() used to build AND enter an aspect on
first sight, so P.build aborted on the third key and desert, tornado,
storm, finish and point were never built at all; P.exit ran the same path
and CONSTRUCTED a dune field during teardown. Each hook is now pcalled and
logged with its key, so one aspect's failure is a hole in the picture
rather than the part.
- asc_grade removes asc_tone on exit. It was added at priority 150 and
removed by nothing, so ENDCARD and every part of a second play-through was
graded by the finale's tone curve.
- The raster honours the camera's fov in this engine build (same camera,
fov 25 and fov 90, two plainly different pictures), so the part stops
pinning every beat at 60 and draws §5.3's own lens column, now a ramp:
56 at the first frame to 36 on the credits hold, solve and raster on one
number. Every frame of the finale read fov 60 before this.
- The murk lands over shot 3 instead of over shot 1: the sun holds its
height through the two establishing shots and then falls harder, and the
dust and visibility schedules move with it. Peak murk and the clearing are
unchanged. Shot 1 at local 1.5: max 91 -> 237, mean 25.5 -> 133.
- A real star field on the sky dome, two densities and a milky band, revealed
by asc_stars off nightMix and twinkling on the bus clock. asc_sky_mat's
three undeclared properties are resolved: stars and milky are declared and
drawn, star_t replaces them as the twinkle clock, cirrus is dropped.
- asc_sky's global lighting moves out of build into enter, same rule as the
hall's.
- The credit cards are legible: 1.75 -> 3.2 world units (about 12 % of frame
height on the 36 degree hold), the crest hue at its bright end, and a dark
outline that fades with the card.
- "light" leaves MOD and all four order lists; it never resolved to a module.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XrwBT91EAXmkKgu6j82tfk