feat(film): captions become world-space 3D text; the film closes on an in-scene ORIGOZERO endcard part
The zui caption screen is replaced by preseed/captions.module spawning
billboard Text3D cards inside the playing part — placed on the camera's
look line from the part's own shot table or an explicit anchor, scale-ramp
materialize, seek-safe despawn. The end card becomes p_endcard, a fifteenth
part (390-400 s): ORIGOZERO with origozero.ai floating in a dark void under
a slow dolly, a silent coda after the score resolves.
The lumen and ascension hero titles switch from extruded font.textMesh
meshes to Text3D while extrusion is broken on this machine (#5335 — glyph
tessellation produces mangled topology; the swap keeps the film clean and
reverts when the engine fix lands). Docs follow the fifteen-part / 400 s
shape.
---
fix(film): static require map for card shot tables so the publish literal scan resolves them