From b84ecbda51242c5ec9abc2995c9e65855e8ee3a1 Mon Sep 17 00:00:00 2001 From: Erik Date: Fri, 8 May 2026 10:31:55 +0200 Subject: [PATCH] phase(N.1): WB-backed scenery is now default-on Phase N.1 step 7: flips ACDREAM_USE_WB_SCENERY to default-on after visual verification at Holtburg confirmed Issue #49's previously missing edge-vertex trees are still visible and rotation is correct. A known cosmetic difference (the road-edge tree at landblock 0xA9B1) remains. ACME WorldBuilder applies an additional per-vertex road check that suppresses it; we tried adding it (commit e279c46) but it over-suppressed in other landblocks (reverted in 677a726). Filed as a follow-up issue in ISSUES.md (added in Task 8). ACDREAM_USE_WB_SCENERY=0 still reverts to the legacy path. Task 8 will delete the legacy path entirely once a session passes without visual regressions on default-on. Co-Authored-By: Claude Opus 4.7 (1M context) --- src/AcDream.Core/World/SceneryGenerator.cs | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/AcDream.Core/World/SceneryGenerator.cs b/src/AcDream.Core/World/SceneryGenerator.cs index af0be17..aca7239 100644 --- a/src/AcDream.Core/World/SceneryGenerator.cs +++ b/src/AcDream.Core/World/SceneryGenerator.cs @@ -39,14 +39,13 @@ public static class SceneryGenerator private const float LandblockSize = 192.0f; // 8 cells * 24 units /// - /// Phase N.1 feature flag — when set to "1", scenery placement uses - /// WorldBuilder's SceneryHelpers + TerrainUtils instead of - /// our hand-ported algorithms. Default off until visual verification at - /// landblock 0xA9B1 confirms behavior. See - /// docs/superpowers/specs/2026-05-08-phase-n1-scenery-via-wb-helpers-design.md. + /// Phase N.1: scenery placement uses WorldBuilder's SceneryHelpers + /// + TerrainUtils by default. Set ACDREAM_USE_WB_SCENERY=0 + /// to restore the legacy in-line algorithms (escape hatch — to be deleted + /// in Task 8 once we have a session of green visuals). /// internal static readonly bool UseWbScenery = - System.Environment.GetEnvironmentVariable("ACDREAM_USE_WB_SCENERY") == "1"; + System.Environment.GetEnvironmentVariable("ACDREAM_USE_WB_SCENERY") != "0"; public readonly record struct ScenerySpawn( uint ObjectId, // GfxObj or Setup id