Venues: song sky, ride roadside, room camera, filmstrip venue pin

- Shared sky dome (src/venues/sky.js): gradient backdrop from palette /
  section light / style texture, wired into chamber/stage/ride with fog
  matched to the dome mid colour — replaces clear-to-black
- Ride roadside: houses, signs, trees, seeded viz billboard, all analytic
  scroll; popMul fade for crew, arrangement-gated roadside (no mid-section
  popping); parked idle creep + engine shake; analytic dash clock
- Room camera: traverse glide + progress look sweep + per-section dolly,
  single-side room visits, one re-hang max; venue framing per archetype
- Filmstrip venue selector (?venueSel=) with cache key; seed persisted to
  URL on reroll; gallery query plumbing
This commit is contained in:
Dejvino
2026-09-18 18:57:04 +02:00
parent 46fab512df
commit 9c768f13d1
10 changed files with 604 additions and 60 deletions
+8 -6
View File
@@ -49,13 +49,15 @@ export const VENUE_STAGING = {
box: { x: 4.0, yLo: -0.2, yHi: 2.0, zLo: 1.0, zHi: 9.0 },
dolly: { wide: 8.2, normal: 4.6, close: 2.4 },
},
// The ride: the "screen" is the dash radio on its stalk at (0, 1.15,
// 0.9), facing +z toward the default camera; the car sits at the origin
// driving toward -z. The camera works the car like a chase unit — orbits,
// push-ins on the radio, pull-backs for the road — inside a box that keeps
// it out of the bodywork.
// The ride: the "screen" is the small dash radio at (0, 0.82, -0.8),
// facing +z (rearward) at the passengers; the car sits at the origin
// driving toward -z. Screen visits shoot from the rear hemisphere (the
// only side the radio faces); the camera works the car like a chase unit
// otherwise — orbits, pull-backs for the road, and passerby plants it on
// the shoulder while the car sweeps through — inside a box that keeps it
// out of the bodywork.
ride: {
screen: [0, 1.15, 0.9],
screen: [0, 0.82, -0.8],
fieldL: [-3.4, 0.2, -3.0],
fieldR: [3.4, 0.2, -3.0],
roomMid: [0, 0.3, -6],