diff --git a/src/AcDream.App/Rendering/GameWindow.cs b/src/AcDream.App/Rendering/GameWindow.cs index c96ad05f..290b70e9 100644 --- a/src/AcDream.App/Rendering/GameWindow.cs +++ b/src/AcDream.App/Rendering/GameWindow.cs @@ -5655,6 +5655,11 @@ public sealed class GameWindow : IDisposable // fall through floor) and the visibility node for any geometry-less // collision cell. CacheCellStruct self-gates on a null PhysicsBSP // (PhysicsDataCache), so this is safe for cells with no physics. + // Note CacheCellStruct DOES register every resolved cell into the UCG + // CellGraph unconditionally (before that BSP gate), so a geometry-less + // cell now enters the graph — but it never enters the _cellStruct BSP + // dictionary that membership/placement resolve through, so the player + // can never be rooted in such a cell. The added graph entry is inert. // // BuildLoadedCell uses the PHYSICS (unlifted) transform. The +0.02 m // render lift above is a DRAW concern (shell z-fighting vs terrain);