The offline degrade probe proved the mechanism: every Holtburg building carries PORT nodes ONLY in its level-0 GfxObj (out to ~24-48 m); every degraded level has zero. Retail walks the CURRENT degrade level BSP (part->gfxobj[deg_level]) - that is what limits look-in punches to the nearest buildings. WalkBuilding gains the degrade ladder + SelectDrawingBsp (band pick; UpdateViewerDistance hysteresis is a port TODO), the walk selects per viewer distance, the adapter builds per-level BSPs, and the stab-list load rule (CLandBlock::init_buildings @0052fd80: a full-res block loads exactly its buildings portal stab cells) replaces load-everything in the landscape builder. The sweep now shows clean rosters with all far-building punches gone; remaining deltas: the near buildings 001a/0022 (50 m/28 m center distance vs the 48 m band edge - sphere-adjusted distance/hysteresis to port) and the one ring-1 frustum boundary pair (aab50002/a9b3003c). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| LandWalkOrder.cs | ||
| RetailFrameWalk.cs | ||
| WalkBuilding.cs | ||
| WalkEvents.cs | ||
| WalkLandscape.cs | ||
| WalkPView.cs | ||
| WalkScreenClip.cs | ||
| WalkViews.cs | ||
| WalkVisibilityMath.cs | ||
| WalkWorld.cs | ||