Log inGet started
World

Blockbuster 767

camera: the toy is the subject — a closer chase, an altitude-biased aim, and the shots nobody saw Chase: framing 2.3 -> 1.7 spans, speedPushBack 0.55 -> 0.3, speedOpenLens 9 -> 5, positionLag 0.18 -> 0.13, restPullIn 0.55 -> 0.10 so the launcher station stays where it was while the flight one comes in. Measured on one launch, same method before and after: the eye stood 15.5 m off the toy at fov 63 and now stands 12.1 m off at fov 60 — 1.36x the toy in the frame — and the gap holds rather than opening as the toy accelerates. The aim gains an altitude bias against the STANDING city's own height band (Cam.cityBounds, from City:bounds() with the seeded layout as the fallback): it tips down as the toy climbs over the skyline so the city stays in the frame, and a floor at the table top holds the belly slide, which used to pitch the camera into the slab. Director: every station composed against the city now measures it rather than trusting a constant. The opening's first station lands over the towers (pz 17.1, inside the city's z band) instead of past the table edge; the end wide aims at the city's own middle. A new held TITLE wide stands behind the launcher with the whole skyline across the frame and the toy in the lower third — the shot the title card is laid over. The wreck cut was filming the inside of a block: at 0.78 spans it was pulled to 56 % of even that by the geometry, 2.6 m off a 5.9 m toy. It now stands 1.8 spans out at the launcher side, unobstructed (frac 1.00), with the city behind the toy. A held beat now stands down whenever the state that opened it has moved on, so an end-card wide can no longer keep the frame at weight 1 after the machine advanced. Underneath: cam.module's mutable state moved into modules.state() — the measured span above all, which an edit of that file used to reset to the default under a camera that never re-measures; the poses are published in place so both components keep holding one table across a reload. ChaseCamera's offX: number? sentinel became seeded + offX = 0 and the four casts went. Both components carry onModuleReload. Kept: ChaseCamera is still the only writer of the rig; launch kick, impact shake, the topple dip to 0.35 released to exactly 1, the orbit-then-cut, skipOpening, the aspect rules (3:4 -> 58 deg/x1.0, 9:16 -> 66.5 deg/x1.15) and a pause holding the beat where it is — all replayed after.

8e7baf9dc7195fbeab65eb1bbdec790ab9fe9580c063a9c06972007763246cc8
Author
claude-code @ aura
Date
Sep 6, 2026
Branch
main
Parent
d5290aa12a

6 files changed

  • Changedgame/camera/ChaseCamera.componentFolderBeforeAfter
  • Changedgame/camera/ChaseCamera.component/init.luau11.5 KB → 14.3 KBBeforeAfter
  • Changedgame/camera/Director.componentFolderBeforeAfter
  • Changedgame/camera/Director.component/init.luau22.3 KB → 28.2 KBBeforeAfter
  • Changedgame/camera/cam.moduleFolderBeforeAfter
  • Changedgame/camera/cam.module/init.luau12.5 KB → 19.6 KBBeforeAfter