main.scene
- .metadata17 B
- README.md5.3 KB
- entrypoint.luau3.8 KB
- scene.json4.0 KB
This package holds more than this page lists. See all of its files in its world.
README.md
Cold Start: the main scene
The whole demo. One scene with player intent "none", an authored DemoCamera
driven entirely by the preseed.director sequencer, and twelve parts that play
back to back for 275 seconds. Entering play starts the film at t = 0. Each part
builds its own content when the clock reaches it and tears that content down
under a fade when the clock leaves.
The film is scored. A 192 BPM drum and bass set composed to the part grid plays
from the first frame, and every part boundary lands on a barline of it, so the
set's drops are the film's cuts. Lights, materials and in-scene action ride the
score through an offline STFT analysis of the track. preseed/MUSIC.md carries
the composition and the cue contract.
Timeline
Twelve parts, 275.0 s. Every start is a barline of the 192 BPM grid (one bar = 1.25 s).
| # | part | start | len | bar | showcase |
|---|---|---|---|---|---|
| 1 | COLDSTART | 0:00.0 | 25.0s | 0 | full frame graphic title sequence, strike cuts on the beat |
| 2 | FRESH CUT | 0:25.0 | 22.5s | 20 | 30k swaying grass blades, a mower cutting a live trail into the lawn |
| 3 | SIMULATION | 0:47.5 | 25.0s | 38 | 45k GPU compute particles morphing through curl noise attractors |
| 4 | REVOLUTION | 1:12.5 | 22.5s | 58 | vaporwave plaza: palette shaders, banded pixel sun, VHS post stack |
| 5 | CRAWLER | 1:35.0 | 22.5s | 76 | ferrofluid tentacle creature hauling itself through a crystal cave |
| 6 | COLLAPSE | 1:57.5 | 22.5s | 94 | crane driven wrecking ball against a five storey brick and steel building |
| 7 | CLOUDSURF | 2:20.0 | 25.0s | 112 | dawn cloud sea, ink silhouette rider carving a healing wake |
| 8 | SNOWLINE | 2:45.0 | 20.0s | 132 | alpine ski run on a terrain clipmap, snow deformed live by compute |
| 9 | FONTAINE | 3:05.0 | 22.5s | 148 | GPU SPH water show: 40 articulated nozzles and a 30 m crown geyser |
| 10 | DISCHARGE | 3:27.5 | 22.5s | 166 | tesla coil in a high voltage hall, 16 pooled fractal arcs |
| 11 | ASCENSION | 3:50.0 | 35.0s | 184 | volumetric cloud deck, a sunset in real time, stars, credits |
| 12 | ENDCARD | 4:25.0 | 10.0s | 212 | ORIGOZERO closing card in the void, silent coda |
Director.timeline() is this table as data, and director parts prints what is
actually loaded. If the two disagree, the engine is right.
TIDES is out of the running order on this machine and not deleted. Entering it
loses the render device every time on this host's GPU link, and a lost device
ends the run rather than degrading the frame, so the film could never reach its
own credits. preseed/tides/, parts/p5_tides.module and the tid_* shaders
are all intact; the scene entrypoint carries the note and the put back line.
The cut contract
The director owns five things about a boundary, so no part has to police the eleven after it:
- bars. A part declares
barsand the director sets the letterbox from it beforeenterruns. The bars are a property of the film, so they survive a part whoseenterfails. - resolutionScale. A part that cannot hold the frame rate at full raster
declares the raster it wants. The scale mode is
"present", so the delivered frame stays the viewport's own size, and the next boundary sets the next part's scale. - eviction. Every post pass that is not the engine's and not the film's own
bloomanddemo_fadeis removed at the boundary, with a warning naming it. A part re-adds its own passes inenterevery time and never relies on one surviving from an earlier part. - black. The outgoing part is at full black 0.15 s before the boundary and the incoming one fades up from black. Whatever a cut costs is spent on black.
- prebuild. A part whose world area is somewhere else is built during the
outgoing part's fade out. So
build(ctx)spawns the part's own content in its own area and nothing else: no sky, no clear colour, no post pass, no light rig, no camera, no renderer global. Those belong inenter(ctx), which is always called at the boundary itself. Two consecutive parts sharing a centre are not prebuilt.
Structure
preseed/director.modulemaster clock, part lifecycle, camera drive, fade, cut contract, music syncpreseed/director.toolboxthe drive surface: status, parts, goto, seek, hold, rate, rebuildpreseed/music.modulescore playback plus the STFT band, beat and cue query APIpreseed/score.module,preseed/synth.module,preseed/bake.modulethe composition, the nx synthesizer, the offline render and analysispreseed/audio/spectrum.bin and cues.bin: STFT bands, onset flux, the named cue trackpreseed/shots.moduleeased camera shot evaluation in part local coordinatespreseed/fx.modulethe post stack, the tone curve, the demo fade and letterboxpreseed/geo.module,preseed/meshbuild.moduleruntime mesh and material helperspreseed/volume.modulethe 3D texture raymarch used by rays, fire and cloudspreseed/surfacing.modulegives a part's authored materials real surfaces at entrypreseed/captions.modulethe caption cardspreseed/parts/one module per part- per part asset families:
preseed/coldstart.module,mow*,vapor/,tendril/,collapse/,surf/,snow/,sph/,tesla/,asc/