diff --git a/src/bin/bevy.rs b/src/bin/bevy.rs index 30f7620..43048fb 100644 --- a/src/bin/bevy.rs +++ b/src/bin/bevy.rs @@ -2203,23 +2203,36 @@ fn setup_3d( ChildOf(root), )); // 2) warm amber machine glow at the core rack (machine presence) — the - // only machine light at tick zero. Tight radius: with ownership now - // painted on the chassis albedo, this is the core's own light pool, - // never a wash that warms foreign dark chassis nearby. - commands.spawn(( - PointLight { - color: AMBER, - intensity: 70_000.0, - range: 3.2, - shadows_enabled: false, - ..default() - }, - Transform::from_translation( - grid_to_world_3d(core.0, core.1, 0.0) + Vec3::new(0.0, 1.2, 0.4), - ), - layer, - ChildOf(root), - )); + // only machine light at tick zero. The core's strip is a LINEAR + // fixture, so its light is a dense run of dim point lights along + // the strip's height (front and back of the seam), never one + // round point pool. Tight ranges: with ownership painted on the + // chassis albedo, this stays the core's own glow, not a wash that + // warms foreign dark chassis nearby. + let core_base = grid_to_world_3d(core.0, core.1, 0.0); + let strip_top = 1.30; // scaled monolith height, just under the cap + for i in 0..6 { + let y = 0.14 + (strip_top - 0.14) * (i as f32 / 5.0); + for (dz, intensity) in [(0.58, 5_500.0), (-0.58, 3_500.0)] { + // Back column: every other rung is enough for the falloff + // to read continuous. + if dz < 0.0 && i % 2 == 1 { + continue; + } + commands.spawn(( + PointLight { + color: AMBER, + intensity, + range: 2.0, + shadows_enabled: false, + ..default() + }, + Transform::from_translation(core_base + Vec3::new(0.0, y, dz)), + layer.clone(), + ChildOf(root), + )); + } + } // No second amber lamp on foreign/known-subnet devices: blueprint is // topology, not a glowing rack farm (machine-work.md: no intel, no render). diff --git a/wiki/interface/computer-visual-language.md b/wiki/interface/computer-visual-language.md index ff3949e..05ecfe7 100644 --- a/wiki/interface/computer-visual-language.md +++ b/wiki/interface/computer-visual-language.md @@ -195,4 +195,7 @@ lacquer — high roughness, zero metallic, specular reflectance ~0.06 — and all amber emissives (core strip/fill/spines, claim rings, the core's lamp) sit low enough that the core never clips to white under the HDR bloom camera; the tower must stay readable geometry, not a -flare. +flare. The core's scene light is a LINEAR fixture (2026-07-09): a +dense run of dim point lights along the strip's height, front and +back — never one round point pool; rung count, offsets, and per-rung +intensity are the knobs. diff --git a/wiki/log/DEVLOG.md b/wiki/log/DEVLOG.md index f0c50b6..b193b0e 100644 --- a/wiki/log/DEVLOG.md +++ b/wiki/log/DEVLOG.md @@ -5,6 +5,18 @@ Type: log ``` Reverse chronological implementation notes. Keep this factual: what changed, why, checks, and spec impact. +## 2026-07-09 - The core's light is a linear fixture + +- Intent: Cameron flagged the core's single point light — a round pool + under a linear strip looks wrong. +- Changed: the amber lamp is now a dense run of dim point lights along + the strip's height (six front rungs, three back, pushed off the + face so the panels do not torch); the floor pool elongates along the + tower and the faces keep their geometry. Calibration note added to + the spec's [TUNE] paragraph. +- Checks: full ./tools/check.sh; game tokens capture, fog audit green. +- Log: entry only (visual [TUNE] pass). + ## 2026-07-09 - Heard noise field (Ears beat visuals) - Intent: after the first audio tap, Heard was a flat dim floor with no @@ -17,6 +29,7 @@ Reverse chronological implementation notes. Keep this factual: what changed, why - Checks: full ./tools/check.sh; ears capture. - Log: wiki/log/2026-07-09-heard-noise-field.md. + ## 2026-07-09 - Token stacks readable at default camera - Intent: decided cube/mercury/exposure forms were vanishing under chassis @@ -27,6 +40,11 @@ Reverse chronological implementation notes. Keep this factual: what changed, why up. - Checks: `./tools/check.sh`. - Log: wiki/log/2026-07-09-token-visibility.md. +<<<<<<< HEAD +======= + + +>>>>>>> 8b00aba (Light the core as a linear fixture) ## 2026-07-09 - In-flight route blips on the work wire - Intent: demand/knowledge hops should read as cargo crawling the wire,