docs: #118 narrowed - partition + per-tick ParentCellId exonerated; decision-stack candidates + exit-walk harness design recorded
Read-level exonerations: the local player routes to Dynamics correctly (ServerGuid set), and its entity ParentCellId syncs per tick from the controller - neither is the vanish mechanism. Live candidates are the doorway-crossing decision stack: (a) eye/cell incoherence under camera damping (the verified #115/BR-8a divergence - we damp from our own damped eye while the root comes from the swept cell), (b) the exit-portal side test culling the OutsideView when the eye is epsilon-outside while the root is still interior (retail's AdjustPosition demotes the viewer cell the same moment), (c) the aperture-cone tightness for an outdoor player with an indoor viewer. Next step is the deterministic exit-walk harness (all-CPU drive of the production decision stack over the corner-building cells); designed in the issue entry, queued for a focused session. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
478c549b9e
commit
0e6e24faf6
1 changed files with 30 additions and 7 deletions
|
|
@ -3946,13 +3946,36 @@ AFTER the punch. Compare against the T1 (`579c8b0`) punch pass wiring.
|
||||||
Like when we are just outside for a moment." Transition frames where the
|
Like when we are just outside for a moment." Transition frames where the
|
||||||
viewer is still indoors and the player is just outside the door.
|
viewer is still indoors and the player is just outside the door.
|
||||||
|
|
||||||
**Suspects (in order):** (1) the LOCAL player entity's partition in
|
**Narrowed (2026-06-11 post-T5 session — two suspects EXONERATED by
|
||||||
`InteriorEntityPartition` — T1's rule routes `ServerGuid != 0` to
|
read):** (1) the partition is correct — the local player entity carries
|
||||||
Dynamics (never dropped); the local player may carry ServerGuid==0 and
|
its ServerGuid and routes to Dynamics; (2) the entity's `ParentCellId` is
|
||||||
fall into a per-cell static class that drops when its cell isn't in the
|
NOT stale — it syncs per tick from the controller
|
||||||
flood; (2) the landscape-through-aperture pass's plane clips slicing the
|
(`pe.ParentCellId = result.CellId`, GameWindow ~6855).
|
||||||
player if it draws in that pass ("clipped" wording). Check the partition
|
|
||||||
first.
|
**Live candidates (the doorway-crossing decision stack):**
|
||||||
|
- **Eye/cell incoherence under camera damping (#115 family / BR-8a):**
|
||||||
|
the render root comes from the sweep (`RetailChaseCamera.ViewerCellId`)
|
||||||
|
while the projection eye (`camPos`) is the DAMPED position — during a
|
||||||
|
crossing they can disagree by the damping lag. Retail damps FROM the
|
||||||
|
published collided viewer (verified divergence, plan BR-8a), so its
|
||||||
|
(eye, cell) pair stays coherent.
|
||||||
|
- **Exit-portal side test at the threshold:** with the eye ε-outside the
|
||||||
|
door plane while the root is still the interior cell,
|
||||||
|
`CameraOnInteriorSide` culls the exit portal → OutsideView EMPTY →
|
||||||
|
`SphereVisibleOutside` culls ALL outdoor dynamics (the player) for
|
||||||
|
those frames. Retail's AdjustPosition demotes the viewer cell to
|
||||||
|
outdoor the moment the point exits (seen_outside → adjust_to_outside),
|
||||||
|
making the inconsistent state structurally brief.
|
||||||
|
- The doorway-aperture cone test for an outdoor-classified player while
|
||||||
|
the viewer is legitimately still inside (cone tightness).
|
||||||
|
|
||||||
|
**Next step (apparatus, not guessing):** a deterministic exit-walk
|
||||||
|
harness over the corner-building cells — drive the production decision
|
||||||
|
stack headlessly per step of an eye+player path crossing the doorway
|
||||||
|
(viewer-cell resolution → `PortalVisibilityBuilder.Build` →
|
||||||
|
`ViewconeCuller` → the `DrawDynamicsLast` visibility predicate) and
|
||||||
|
assert the player sphere stays visible on every step. All CPU; the
|
||||||
|
failing step pins which candidate fires.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue