From 56ac17e67006c1aa305948a22f509d3e75589b71 Mon Sep 17 00:00:00 2001 From: beezm Date: Mon, 10 Aug 2026 02:42:26 -0400 Subject: [PATCH] docs: erosion pass in the generator README (terrain-water task 17) Co-Authored-By: Claude Fable 5 --- Tools/Scripts/README.md | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/Tools/Scripts/README.md b/Tools/Scripts/README.md index 214dacc..df8ed79 100644 --- a/Tools/Scripts/README.md +++ b/Tools/Scripts/README.md @@ -43,10 +43,22 @@ Generates the entire 2D blueprint. Roughly in order: bit-identical to an unwarped one outside the shelf/riser stack. Drops the `0_height` hillshade snapshot (hypsometric bands × NW hillshade) in both modes. - **No rivers, no erosion, no flow routing anywhere in this pipeline.** A D8 drainage-incision - pass was written and reverted in task 10 — per-cell steepest descent on a regular grid can only - route along eight headings, and at map scale that reads as straight hatching, not drainage. - Erosion is Phase C work: a hydraulic pass over final terrain, after the shape stops moving. + **Erosion (task 17, Phase C0)** — with `Erosion: "v1"` (default **"off"**, opt-in until the + developer's gate approves it) a droplet-based hydraulic erosion pass (`HydraulicErosion.cs`, + standalone numeric, deterministic from the resolved seed) details the curved+detailed render + map after the detail passes and before the crater carve: droplets walk downhill with inertia, + eroding steep fast stretches over a small brush and depositing where the ground flattens — + organic, sinuous drainage, not grid hatching. Three hard governors bound it + (`ErosionDropletCount`/`ErosionDropletLifetime`/`ErosionCarveCap` — the cap is per-cell, in + metres, ledger-enforced), a sea clamp forbids carving below sea + margin and leaves below-sea + cells untouched entirely (the rendered coastline cannot move — asserted every generation), and + nothing within 1.2× the crater radius is modified. Output-height only: biome/water + classification reads the retained pre-erosion map, so `1_biomes`/`0_water` are bit-identical + with erosion on or off. **No rivers yet** — the carved channels are the designated future river + routes (Phase C0b promotes them). The predecessor D8 drainage-incision pass was written and + reverted in task 10 — per-cell steepest descent on a regular grid can only route along eight + headings, and at map scale that reads as straight hatching, not drainage; the droplet model is + the working replacement. 3. **Sea level and water** — sea level per the configured model (`SeaLevelModel`: `"flat"` scalar — the default, `SeaLevelValue` 0.15 — or the legacy `"field"` latitude Lerp); flood fill separates true ocean from inland lakes; a mainland fill guarantees one contiguous landmass.