Skip to content

Light the table above the room, show the felt and rail textures, and turn the legs - #58

Open
darrinm wants to merge 2 commits into
mainfrom
visuals-port
Open

darrinm wants to merge 2 commits into
mainfrom
visuals-port

Conversation

@darrinm

@darrinm darrinm commented Sep 24, 2026 •

Copy link
Copy Markdown
Owner

Changes

Lighting

  • In the photographed rooms, room fill, hemisphere and reflections run at 0.7 (ROOM_LIGHT) and the table lamp at 2.6× (was 1.2×).
  • The panorama dims with distance from the table, from 0.85 near it to 0.5 at the walls.
  • The lamp fixture still fades out before the camera reaches its height, so it cannot cover the table.

Felt/room mean-luminance ratio in the default view, HUD hidden:

Room Before After
Corner 1.55 3.93
Desert 1.01 1.78
Tokyo 2.59 6.80
Orbital 1.52 3.38
Alpine 1.59 3.67
Glasshouse 0.70 1.15
Coast 0.94 1.61
Riad 0.69 1.50
Minimal 6.89 6.71

Glasshouse stays lowest because its floor is near-white stone. Minimal dips slightly because its cloth texture now shows.

Textures

  • ExtrudeGeometry UVs are world units, so the felt (×6), cloth normal (×40) and rail wood (×4) repeats tiled hundreds of times across the table. They mipped down to a flat felt and a woven moiré on the rails.
  • Repeats are now tiles per unit (felt 10 units, weave 2, grain 22).
  • The rail frame's top faces get their own UVs, so the grain runs along each rail, end rails included.
  • woodMap and the cloth weave now tile seamlessly.

Table

  • Turned legs. Orbital still hides the legs.
  • Rounded apron.
  • Warmer sight diamonds, set 5/1000 proud of the rail.
  • Balls receive the lamp's shadows. Shadow-casting lights are unchanged from main: the lamp (2048) and the Sun cue (512).

HUD

  • Darker header scrim and a soft text shadow over bright panoramas.
  • The arcade label and an idle ×1 are neutral. A live streak keeps the player's colour (data-hot on MultiplierBadge, with a test assertion).

Tried and reverted after play testing

  • Orbital Earth: a composited NASA Earth left artifacts along the frame and mullion cutout lines. The original panorama is restored.
  • Furniture shading from the room fill light: its 1024 shadow map spans 280 units, 0.27 units per texel. The moons' shadows from that light stepped a texel about four times a second.

Not changed

  • The aim guide and pockets: astrapool already has its own versions.
  • The bent edges in the Tokyo and Glasshouse panoramas: fixing them needs regenerated panoramas.

Testing

  • npm test: 361 pass.
  • npm run physics-test: 26/26.
  • npm run build succeeds.
  • npm run test:online: 6 pass.
  • Checked in Chrome with before/after screenshots in all nine rooms, table close-ups, the HUD over Glasshouse and Corner, and portrait at 390×844.
  • The running build casts shadows from the same lights as main.

🤖 Generated with Claude Code

darrinm and others added 2 commits September 23, 2026 17:10
… the legs, and put a real Earth outside Orbital

Lighting: room fill, hemisphere and reflections run at 0.7 and the table lamp at 2.6x (was 1.2x); the panorama
dims with distance from the table. The felt/room luminance ratio rises in every photographed room
(riad 0.69 to 1.50, glasshouse 0.70 to 1.15, corner 1.55 to 3.93).

Textures: ExtrudeGeometry UVs are world units, so the felt, cloth and rail repeats tiled hundreds of times and
mipped to flat colour and a woven moire. Repeats are now tiles per unit, the rail frame's top faces run the
grain along each rail, and the wood and cloth maps tile seamlessly.

Table: turned legs, rounded apron, warmer diamonds. Balls receive shadows; the room fill light shades the
furniture. HUD: darker header scrim; the arcade label and an idle multiplier are neutral.

Orbital: the painted Earth is replaced by a render of NASA Blue Marble and Black Marble with Solar System Scope
clouds, masked behind the original frame and mullions. pipeline/environments/orbital_earth.py rebuilds it.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
The composited Earth left artifacts along the frame and mullion cutout lines; the original panorama, preview,
credits text and pipeline README are restored.

The room fill light's 1024 shadow map spans 280 units (0.27 units per texel). It shadowed the moons too, whose
shadows then stepped a texel about four times a second. The fill light no longer casts shadows; shadows are
the table lamp and the Sun cue, as on main.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
@darrinm darrinm changed the title Light the table above the room, show the felt and rail textures, turn the legs, and put a real Earth outside Orbital Light the table above the room, show the felt and rail textures, and turn the legs Sep 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant