Grains resting on anything built cast no shadow (t37)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-25 20:21:31 -04:00
co-authored by Claude Opus 5.5
parent 7d1be16094
commit f19facbe5c
4 changed files with 45 additions and 6 deletions
+1 -1
View File
@@ -352,7 +352,7 @@ Drawing (src/render/): browser only. This file: the renderer state R, colour tab
- functions: glowIndex, thermIdx, pipeCellColor, pipeBodyCell, thinPipeColor, beltLike, buildSky, initRender, resizeRender, viewCells, updateCamera, snapCamera, screenToWorld, worldToScreenPx, renderMonoFont
- variables: R, GLOW_W, GLOW_R, GLOW_G, GLOW_B, THERM, PC, TREE_R, TREE_G, TREE_B, BG, SKY_R, SKY_G, SKY_B
### src/render/light.js (104 lines)
### src/render/light.js (103 lines)
Propagated coloured light from glowing and burning cells.
- functions: builtForLight, looseForLight, computeLight
+9
View File
@@ -4,6 +4,15 @@ What agents have done, newest first. Add an entry for every piece of work: the d
note or request it was for, what changed, the files touched, the tests run, and anything left
open or not verified. Keep each entry short; the git history has the details.
## 2026-10-25: t37 follow-up: grains on built things cast no shadows (Claude Code, Codex)
- The owner saw a flickering shadow under a grinder fed by a stream: grains resting on its
housing for a moment shaded. `looseForLight` (`src/render/light.js`) now treats a loose stack
that rests on any `builtForLight` cell, or ends in air or gas, as see-through. Stacks on natural
ground or deeper than 12 cells still shade.
- `test/t_light.js` (a grinder stream checked for 180 ticks in both lighting modes);
`run_all.py --browser` ALL PASSED.
## 2026-10-25: t37 follow-up: falling grains cast no shadows (Claude Code, Codex)
- The owner saw a single falling grain darken a column of sky. `onBeltForLight` became