fix(pipeline): bake strength 0.85→0.70 (kills ceiling blowout)

GPU A/B on the worst-blown frame (r9_N crypt): at strength 0.85 the
ControlNet forced the bright near-ceiling depth into a blown-white band
(27.7% of pixels >245); at 0.70 the blowout vanishes (0.0%) and the
ceiling renders as natural dark vaulted stone, with geometry still
honored. Verified a closed wall (r0_N threshold) stays solid at 0.70 —
no phantom doors return — so one global strength suffices. Matches the
documented Z-Image 0.6-0.7 sweet spot now that rev-3 maps are
full-contrast (high strength was only needed to force weak old maps).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Parley Hatch 2026-06-15 23:17:17 -06:00
parent 3773ac2ad7
commit b661989d4b

View file

@ -14,7 +14,7 @@ trigger words (they summon player hands), a fixed style-anchor block, and a FIXE
seed across every frame so the palette + lighting stay coherent across the atlas.
python3 tools/bake_atlas.py --seed 7 [--url http://192.168.1.26:8188]
[--strength 0.65] [--size 640x360] [--limit N]
[--strength 0.70] [--size 640x360] [--limit N]
"""
import argparse
import glob
@ -110,7 +110,10 @@ def main():
ap = argparse.ArgumentParser(description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter)
ap.add_argument("--seed", type=int, required=True, help="dungeon seed (selects the atlas dir)")
ap.add_argument("--url", default="http://192.168.1.26:8188")
ap.add_argument("--strength", type=float, default=0.85, help="depth control strength (0.85 honors the room footprint)")
ap.add_argument("--strength", type=float, default=0.70, help="depth control strength. 0.70 is the sweet spot now "
"that rev-3 maps are full-contrast: a GPU A/B showed 0.85 over-constrained the bright near-ceiling "
"into a blown-white band (worst on crypt frames, ~28%% of pixels), while 0.70 renders a natural "
"dark vaulted ceiling AND still honors geometry — closed walls stay solid (no phantom doors return).")
ap.add_argument("--render-seed", type=int, default=7, help="FIXED diffusion seed for every frame (style lock)")
ap.add_argument("--size", default="640x360", help="pixel-art frame size (16:9; 320x180 for chunky)")
ap.add_argument("--width", type=int, default=1280)