docs(milestones): promote indoor work to M1.5 — primary focus
Continued indoor testing through 2026-05-20 surfaced a deep family of physics + lighting bugs that span buildings AND dungeons. Today's session shipped 5 surgical fixes (A4 + #89 + #90 + #91 + #92) that close the user-visible "walls walk through at Holtburg inn" symptom, but #90 specifically is a CLAUDE.md-rules workaround (sphere-overlap stickiness on top of point-only cell containment) added without prior approval. The underlying issue (BSP push-back distance probably diverges from retail) hasn't been measured. Plus the umbrella #83 (indoor multi-Z walking) has been open since 2026-05-19 with multiple aborted fix attempts; plus indoor lighting (#80 + #81 + new #93 + #94) has been deferred as "M7 polish" but is actually part of the same indoor-experience problem. Promoting to a milestone of its own forces the work to be central, retail-anchored, and complete — not another whack-a-mole patch. Milestone M1.5 — "Indoor world feels right": Demo: enter Holtburg Sewer through the in-town portal, navigate through 5-7 rooms with stairs + a multi-Z chamber, exit back to town. Walls block. Stairs work. Items block. Lighting reads correctly. Cell transitions smooth. Phases: A6 — Indoor physics fidelity (cdb-driven) A7 — Indoor lighting fidelity (RenderDoc + retail-decomp driven) Issues in scope: #80, #81, #83, #88, #90 (workaround removal), #93 (new lighting umbrella), #94 (held-item spotlight), + TryFindIndoorWalkablePlane synthesis removal. M2 ("Kill a drudge") deferred until M1.5 lands. This commit updates: - docs/plans/2026-05-12-milestones.md (M1.5 block inserted, M2 moved to deferred status) - docs/plans/2026-04-11-roadmap.md (A6 + A7 sub-pieces detailed) - CLAUDE.md (Currently working toward updated to M1.5, M2 paragraph marked deferred, M1.5 baseline shipped paragraph added) - docs/ISSUES.md (#80, #81, #83, #88, #90 tagged M1.5 scope; new #93 indoor lighting umbrella + #94 held-item spotlight filed) - docs/research/2026-05-21-open-items-pickup-prompt.md (landscape table reorganized around M1.5 phases) A6 + A7 specs to be drafted in the next session(s). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
23ab17362a
commit
6d18d879a2
5 changed files with 272 additions and 26 deletions
|
|
@ -203,7 +203,7 @@ matching torch-light pools.
|
|||
|
||||
## #80 — Camera on 2nd floor goes very dark
|
||||
|
||||
**Status:** OPEN
|
||||
**Status:** OPEN — **M1.5 scope (A7 lighting fidelity)**
|
||||
**Severity:** MEDIUM
|
||||
**Filed:** 2026-05-19
|
||||
**Component:** lighting
|
||||
|
|
@ -232,7 +232,7 @@ ground floor; transition is not abrupt.
|
|||
|
||||
## #81 — Static building stabs don't react to atmospheric lighting changes
|
||||
|
||||
**Status:** OPEN
|
||||
**Status:** OPEN — **M1.5 scope (A7 lighting fidelity)**
|
||||
**Severity:** MEDIUM
|
||||
**Filed:** 2026-05-19
|
||||
**Component:** lighting, rendering
|
||||
|
|
@ -284,8 +284,8 @@ slopes shows matching shading.
|
|||
|
||||
## #83 — Indoor multi-Z walking broken (cellars, 2nd floors, intermittent falling-stuck)
|
||||
|
||||
**Status:** OPEN — foundation work landed 2026-05-19, root-cause fix deferred to a follow-up investigation phase
|
||||
**Severity:** HIGH (blocks vertical indoor traversal + degrades single-floor cases)
|
||||
**Status:** OPEN — **M1.5 scope (A6 physics fidelity, primary umbrella issue)**. Foundation work landed 2026-05-19; root-cause fix scoped to A6.P1-P3 cdb-driven investigation.
|
||||
**Severity:** HIGH (blocks vertical indoor traversal + degrades single-floor cases). M1.5 acceptance depends on this closing.
|
||||
**Filed:** 2026-05-19
|
||||
**Component:** physics, movement, resolver
|
||||
|
||||
|
|
@ -472,7 +472,7 @@ propagates through portal connectivity data in `CEnvCell`.
|
|||
|
||||
## #88 — Indoor static objects vibrate (bookshelves, open furnaces)
|
||||
|
||||
**Status:** OPEN
|
||||
**Status:** OPEN — **M1.5 scope (A6 physics — suspected sub-step state corruption family)**
|
||||
**Severity:** MEDIUM (visual jitter; doesn't block gameplay)
|
||||
**Filed:** 2026-05-19
|
||||
**Component:** rendering, animation
|
||||
|
|
@ -511,8 +511,8 @@ propagates through portal connectivity data in `CEnvCell`.
|
|||
|
||||
## #90 — Cell-id ping-pong at indoor doorway threshold
|
||||
|
||||
**Status:** OPEN
|
||||
**Severity:** HIGH (blocks visible value of Phase A4 multi-cell BSP iteration; user-reported as "walls walk through everywhere in the inn")
|
||||
**Status:** OPEN — **WORKAROUND in place (sphere-overlap stickiness, commit `4ca3596`). M1.5 scope (A6.P4) — workaround removal after underlying push-back fix.** User-visible symptom resolved 2026-05-20; root cause still to investigate.
|
||||
**Severity:** HIGH (workaround unblocks indoor visibility for M1.5 baseline; M1.5 acceptance requires the proper fix)
|
||||
**Filed:** 2026-05-20
|
||||
**Component:** physics — cell tracking
|
||||
|
||||
|
|
@ -534,6 +534,46 @@ Retail oracle for cell-id hysteresis: `acclient_2013_pseudo_c.txt:308742-308783`
|
|||
|
||||
---
|
||||
|
||||
## #93 — Indoor lighting broken (M1.5 lighting umbrella)
|
||||
|
||||
**Status:** OPEN — **M1.5 scope (A7 lighting fidelity, primary lighting issue)**
|
||||
**Severity:** HIGH (degrades indoor experience; M1.5 acceptance depends on it closing)
|
||||
**Filed:** 2026-05-20
|
||||
**Component:** lighting, rendering
|
||||
|
||||
**Description:** Interior cells (inn, cottages, dungeons — anywhere with `cellLow >= 0x0100`) render with lighting that doesn't match retail. Specific symptoms include #80 (2nd floor goes dark), wrong per-cell ambient, missing cell-internal light sources (torches/lanterns), and outdoor day-cycle bleeding into indoor cells. Umbrella issue covering the family; sub-issues to be filed during A7.L1 probe spike.
|
||||
|
||||
**Root cause / status:** Suspected family of bugs in (a) per-cell environment-light tag parsing from the dat (we may not parse `cell.envLightInfo` correctly), (b) cell-light association (which lights belong to which cell), (c) indoor visibility culling for lights, (d) the indoor branch of `GameWindow.UpdateSunFromSky` which uses a flat ambient. Investigation deferred to A7.L1.
|
||||
|
||||
**Files:**
|
||||
- `src/AcDream.App/Rendering/GameWindow.cs:8330+` (`UpdateSunFromSky`, indoor branch with flat ambient)
|
||||
- `src/AcDream.App/Rendering/Shaders/mesh_modern.frag` (per-pixel light evaluation)
|
||||
- `references/WorldBuilder/...` (any WB lighting helpers we inherit)
|
||||
- Retail oracle: grep `Render::lighting_*` in `acclient_2013_pseudo_c.txt`
|
||||
|
||||
**Acceptance:** Holtburg inn interior lighting matches retail at the same character position. Holtburg Sewer dungeon torchlight reads correctly per-room. 2nd-floor cells brightness matches ground floor.
|
||||
|
||||
---
|
||||
|
||||
## #94 — Held items project spotlight on walls
|
||||
|
||||
**Status:** OPEN — **M1.5 scope (A7 lighting fidelity)**
|
||||
**Severity:** MEDIUM (visual fidelity; doesn't block gameplay)
|
||||
**Filed:** 2026-05-20
|
||||
**Component:** lighting, rendering
|
||||
|
||||
**Description:** Items the player is holding (torches, light-source items) project a spotlight effect onto nearby walls. The spotlight direction is wrong — should be omnidirectional from the item, but appears to project specifically toward wall surfaces.
|
||||
|
||||
**Root cause / status:** Per-entity light direction transform. `LightingHookSink` owner-tracking applies an entity-rotation transform that's probably wrong for held-light items — likely passing the entity's facing-direction as the spotlight cone direction when retail's behavior is omnidirectional point-light.
|
||||
|
||||
**Files:**
|
||||
- `src/AcDream.App/Rendering/Vfx/LightingHookSink.cs` (suspected — verify during A7.L1)
|
||||
- `src/AcDream.App/Rendering/Shaders/mesh_modern.frag` (point-light eval branch)
|
||||
|
||||
**Acceptance:** Held-item lighting illuminates nearby surfaces uniformly without directional cone artifacts. Matches retail's behavior at the same item in same scene.
|
||||
|
||||
---
|
||||
|
||||
|
||||
|
||||
**Status:** DONE
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue