Skip to content

fix: complete the gallery quality pass — turntable regression, three old-era restages#65

Merged
TMHSDigital merged 4 commits into
mainfrom
fix/gallery-quality-pass-three
Jul 19, 2026
Merged

fix: complete the gallery quality pass — turntable regression, three old-era restages#65
TMHSDigital merged 4 commits into
mainfrom
fix/gallery-quality-pass-three

Conversation

@TMHSDigital

Copy link
Copy Markdown
Owner

Completes the gallery quality pass. Pass two (#62) fixed seven examples but shipped one regression and left three in-scope examples in the old washed style because their verdicts were wrong. This PR fixes exactly those defects and runs the whole-gallery acceptance test that pass two skipped.

Incorrect prior verdicts — flagged for the record

  • turntable — pass two's "fix" was itself defective: the still rendered whatever frame the turntable landed on (FRAMES // 4 = ~82° of turn), showing Suzanne face-away where the muzzle and ear read as corrupted geometry. Accepted in review because the reviewer knew what it was; a stranger doesn't.
  • gn-sdf-remesh — marked PASS in pass two; actually old-era (light floor, 1100 W key, no view transform, brick-toned red).
  • bmesh-gear — marked PASS in pass two ("anatomy reference"); the shipped hero was a flat white gear that did not even match the script's own steel material — the asset predated the current code, and per-image inspection misjudged it as acceptable.

Fixes in this PR (one commit per example)

  • turntable — render frame pinned deliberately to frame 4 (~31° of turn: three-quarter view, ears and brow read instantly as Suzanne) with a comment stating why an arbitrary turntable frame is not acceptable; smooth shading made explicit via Mesh.shade_smooth(). House staging kept.
  • gn-sdf-remesh — restaged to docs/VISUAL-STYLE.md: spec floor/world values, shaped warm key (650 W), faint cool fill, warm wedge raking the wall, Standard view transform. The crimson now reads saturated instead of brick.
  • bmesh-gear — restaged to the spec (floor/world, 700 W warm key, restrained fill, warm wedge, Standard transform). The steel material the script always specified finally shows: bright machined face, dark tooth flanks, warm pool behind.
  • depsgraph-export — second-pass improvement: darker slate base cube with a slight sheen (was a large mid-grey slab that dominated the thumbnail), tighter framing. The base-vs-evaluated contrast story now reads at card size.

Reconciled scope — all 14 pre-#61 examples accounted for

Example Pass two This pass Status
swatch-grid fixed (re-staged, verify-gated) fixed
turntable "fixed" (regressed) re-fixed: pinned pose, smooth shading fixed now
shape-key-blend fixed (progression) fixed
driver-wave fixed (reframed + relit) fixed
gn-instance-grid fixed (relit) fixed
depsgraph-export fixed (relit) improved: cube material + framing fixed now
curve-bevel-arc fixed (reframed + relit) fixed
gn-sdf-remesh PASS (incorrect) restaged to spec fixed now
bmesh-gear PASS (incorrect) restaged to spec fixed now
wave-displace PASS verified in whole-gallery review genuinely passing — frame-filling saturated sculptural form on near-black
shader-node-group PASS verified in whole-gallery review genuinely passing — dark stage, warm backdrop pool, saturated hero spheres
temp-override-join PASS verified in whole-gallery review genuinely passing — dark stage, warm pool, amber subject
compositor-glare PASS verified in whole-gallery review genuinely passing — neon glow on near-black, the halo is the witness
damped-track-aim PASS verified in whole-gallery review genuinely passing — polished separately in #53, dramatic staging

Phase 3 — whole-gallery acceptance (mandatory, executed)

Gallery regenerated via scripts/build_gallery.py, served locally with python -m http.server from docs/ (the prior run's exit 127 was the server being killed intentionally after use, not a failure to serve), loaded in a real browser at a viewport tall enough to defeat lazy-loading, and scrolled end to end with every thumbnail loaded. Confirmed: no card reads as old-era, no render reads as broken geometry, and the six post-#61 examples still lead.

Verification

Proven by live run (local): check-only exit 0 on Blender 4.5.11 LTS and 5.1.2 for all four touched examples — including both sides of turntable's slotted-actions channelbag shim and its EEVEE engine-id gate (the 4.5 run exercises strip.channelbag, the 5.1 run action_ensure_channelbag_for_slot). All renders on 5.1.2 EEVEE; every candidate inspected at full size, card crop, and thumbnail scale. swatch-grid untouched this pass — its shim coverage stands from #62.

Established by inspection only: --engine cycles render paths and the 4.5 EEVEE-Next render path (identical scene code behind the existing engine-id gates; CI smoke is check-only by design).

No check tolerances touched; no generated pages hand-edited; release-owned version fields untouched. Alt texts verified against the new renders — all four remain accurate (bmesh-gear's alt finally matches its render).

🤖 Generated with Claude Code

@github-actions github-actions Bot added the documentation Improvements or additions to documentation label Jul 19, 2026
@TMHSDigital
TMHSDigital merged commit 10ecb07 into main Jul 19, 2026
9 checks passed
@TMHSDigital
TMHSDigital deleted the fix/gallery-quality-pass-three branch July 19, 2026 01:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant