Skip to content

Commit 99ca76d

Browse files
TMHSDigitalclaude
andauthored
fix: street-lantern, watchtower, parent-inverse-orrery and ngon-triangulate quality pass (#239)
* fix: street-lantern quality pass, a knee brace that bites post and arm The brace ends sat just outside the post and under the arm, so one bevelled corner grazed each host and it read as a loose stick; the BVH gap budget passed on the graze. Both ends now tenon in, and a brace-bite budget asserts each end inside its host (exit 20, --shallow-brace). Aged brass, sorted bevel input, 60 m stage, temp glb removed. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com> * fix: watchtower quality pass, a deck on girts and rails post to post The platform floated: no deck bearers, joists ending in the air, plank ends over nothing, and side rails stopping 0.30 m short of the front posts. Four deck girts, girt-to-girt joists and post-to-post side rails, with deck-bearing and side-rail budgets (exit 17, --short-joists, --open-sides). Grained wood, weathered shakes, rusted iron, sorted bevels, 60 m stage, temp glb removed. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com> * fix: parent-inverse-orrery presentation, Standard view, house light, framing gate Render path only: Standard view transform (AgX turned the sun into a peach bulb), house lighting that brings mean luma from 0.33 into the calibration band, a 60 m stage, and a framing gate the render never had. Contract and exit codes unchanged on 4.5.11, 5.1.2 and 5.2.1. Also regenerates the index. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com> * docs: ngon-triangulate re-verified, the UV-map error that masks the abort Re-verified on 4.5.11, 5.1.2 and 5.2.1: the abort text, the glTF 12-tri claim and all exits hold. Documents the UV-map error that calc_tangents raises first and that differs by version, states nothing is version-gated, and corrects the exit-1 wrapper description. No code change. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com> * docs: showcase conventions for biting joints and bearing platforms From the street-lantern and watchtower passes. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com> --------- Signed-off-by: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com> Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
1 parent caf3638 commit 99ca76d

24 files changed

Lines changed: 1035 additions & 158 deletions

‎README.md‎

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -114,11 +114,11 @@ Budget-conformance props. Not examples. Conventions: [`showcase/README.md`](show
114114
<a href="showcase/wooden-barrel/"><img src="showcase/wooden-barrel/preview.webp" width="24%" alt="Wooden barrel: a 20-stave wine-cask with a head of four boards, chord-lofted iron hoops, and a bung on a dark studio floor" /></a>
115115
<a href="showcase/campfire/"><img src="showcase/campfire/preview.webp" width="24%" alt="Campfire: a two-course ring of rounded fieldstones around a tripod of logs and glowing ash on a dark studio floor, warm wedge on the back wall" /></a>
116116
<a href="showcase/market-stall/"><img src="showcase/market-stall/preview.webp" width="24%" alt="Market stall: a grained timber frame with post feet, diagonal side braces, slatted counter, rafters, and a striped canvas awning on a dark studio floor, warm wedge on the back wall" /></a>
117-
<a href="showcase/street-lantern/"><img src="showcase/street-lantern/preview.webp" width="24%" alt="Street lantern: an iron post with brass collars, a braced arm, and a muntined amber cage on a dark studio floor" /></a>
117+
<a href="showcase/street-lantern/"><img src="showcase/street-lantern/preview.webp" width="24%" alt="Street lantern: an iron post with aged brass collars, a knee brace tenoned into post and arm, and a muntined amber cage on a dark studio floor" /></a>
118118
<a href="showcase/treasure-chest/"><img src="showcase/treasure-chest/preview.webp" width="24%" alt="Treasure chest: a slatted wooden chest with iron bands, corner brackets, and an open lid on a dark studio floor" /></a>
119119
<a href="showcase/terrain-scatter/"><img src="showcase/terrain-scatter/preview.webp" width="24%" alt="Terrain scatter: a Geometry Nodes dirt hill tile with bevelled masonry rocks on a dark studio floor" /></a>
120120
<a href="showcase/fence-kit/"><img src="showcase/fence-kit/preview.webp" width="24%" alt="Fence kit: a timber post-and-rail section with pyramidal caps, iron shoes and straps on a dark studio floor" /></a>
121-
<a href="showcase/watchtower/"><img src="showcase/watchtower/preview.webp" width="24%" alt="Watchtower: a timber lookout with X-braces, hatch ladder, plank platform, and a coursed shake roof on a dark studio floor" /></a>
121+
<a href="showcase/watchtower/"><img src="showcase/watchtower/preview.webp" width="24%" alt="Watchtower: a grained timber lookout with X-braces, hatch ladder, a plank platform on deck girts, and a coursed shake roof on a dark studio floor" /></a>
122122
<a href="showcase/cart/"><img src="showcase/cart/preview.webp" width="24%" alt="Cart: a two-wheel wooden cart with spoked wheels, slatted bed, and shafts on a dark studio floor" /></a>
123123
<a href="showcase/park-bench/"><img src="showcase/park-bench/preview.webp" width="24%" alt="Park bench: a wrought-iron bench with scrolled legs and wooden slats on a dark studio floor" /></a>
124124
<a href="showcase/wheelbarrow/"><img src="showcase/wheelbarrow/preview.webp" width="24%" alt="Wheelbarrow: a wooden tray with walls of stacked boards and iron straps, a spoked wheel, rear legs, and handles on a dark studio floor" /></a>
@@ -149,15 +149,15 @@ Budget-conformance props. Not examples. Conventions: [`showcase/README.md`](show
149149

150150
[`market-stall`](showcase/market-stall/) — procedural timber stall with striped awning and counter through the same pipeline. Falsifiers `--skip-decimate` exits 9, `--short-brace` exits 17.
151151

152-
[`street-lantern`](showcase/street-lantern/) — procedural hanging lantern with iron post, brass fittings, and amber cage through the same pipeline. Falsifier `--skip-decimate` exits 9.
152+
[`street-lantern`](showcase/street-lantern/) — procedural hanging lantern with iron post, brass fittings, and amber cage through the same pipeline. Falsifiers `--skip-decimate` exits 9, `--shallow-brace` exits 20.
153153

154154
[`treasure-chest`](showcase/treasure-chest/) — procedural slatted chest with iron bands, corner brackets, and an open lid through the same pipeline. Falsifier `--skip-decimate` exits 9.
155155

156156
[`terrain-scatter`](showcase/terrain-scatter/) — Geometry Nodes hill tile with bevelled masonry scatter through the same pipeline. Falsifier `--skip-decimate` exits 9.
157157

158158
[`fence-kit`](showcase/fence-kit/) — procedural post-and-rail fence section through the same pipeline. Falsifier `--skip-decimate` exits 9.
159159

160-
[`watchtower`](showcase/watchtower/) — procedural timber lookout with X-braces, hatch ladder, platform, and coursed shake roof through the same pipeline. Falsifier `--skip-decimate` exits 9.
160+
[`watchtower`](showcase/watchtower/) — procedural timber lookout with X-braces, hatch ladder, platform, and coursed shake roof through the same pipeline. Falsifiers `--skip-decimate` exits 9, `--short-joists` exits 17.
161161

162162
[`cart`](showcase/cart/) — procedural two-wheel wooden cart with spoked wheels, slatted bed, and shafts through the same pipeline. Falsifier `--skip-decimate` exits 9.
163163

@@ -203,7 +203,7 @@ or expand a category below.
203203

204204
<p align="center">
205205
<a href="examples/grease-pencil-rosette/"><img src="examples/grease-pencil-rosette/preview.webp" width="24%" alt="Grease pencil rosette: five nested neon rose curves glowing against a dark studio wall" /></a>
206-
<a href="examples/parent-inverse-orrery/"><img src="examples/parent-inverse-orrery/preview.webp" width="24%" alt="Parent inverse orrery: a brass tabletop orrery with a glowing sun and three planets" /></a>
206+
<a href="examples/parent-inverse-orrery/"><img src="examples/parent-inverse-orrery/preview.webp" width="24%" alt="Parent inverse orrery: a brass tabletop orrery with a glowing yellow sun and three planets" /></a>
207207
<a href="examples/compositor-glare/"><img src="examples/compositor-glare/preview.webp" width="24%" alt="Compositor glare: three neon rings with colored bloom halos" /></a>
208208
<a href="examples/image-pixels-testcard/"><img src="examples/image-pixels-testcard/preview.webp" width="24%" alt="Image pixels testcard: a studio monitor showing a procedural broadcast test card" /></a>
209209
</p>
@@ -706,7 +706,7 @@ ring pinned and the tip deflected. A straight tube is a failure.
706706
</tr>
707707
<tr>
708708
<td width="46%" valign="middle">
709-
<a href="examples/parent-inverse-orrery/"><img src="examples/parent-inverse-orrery/preview.webp" alt="Parent inverse orrery: a brass tabletop orrery with a glowing sun, three planets on pivot arms inside brass orbit rings, and a silver moon, on a dark studio floor" /></a>
709+
<a href="examples/parent-inverse-orrery/"><img src="examples/parent-inverse-orrery/preview.webp" alt="Parent inverse orrery: a brass tabletop orrery with a glowing yellow sun, three planets on pivot arms inside brass orbit rings, and a silver moon, on a dark studio floor" /></a>
710710
</td>
711711
<td valign="middle">
712712

-3.24 KB
Loading
476 Bytes
Loading
-1.5 KB
Loading
54.4 KB
Loading
308 Bytes
Loading
-712 Bytes
Loading

‎docs/gallery/index.html‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -519,7 +519,7 @@ <h2><a href="color-attribute-wheel/">color-attribute-wheel</a></h2>
519519
</article>
520520
<article class="card" data-tags="objects transforms">
521521
<a class="card-media" href="parent-inverse-orrery/" tabindex="-1" aria-hidden="true">
522-
<img src="assets/parent-inverse-orrery-hero.webp" alt="A brass orrery: a pale central sun on a stand with three planets on arms and orbit rings." loading="lazy" decoding="async" />
522+
<img src="assets/parent-inverse-orrery-hero.webp" alt="A brass orrery: a glowing yellow sun on a stand with blue, green and orange planets on arms, orbit rings and a silver moon." loading="lazy" decoding="async" />
523523
</a>
524524
<div class="card-body">
525525
<h2><a href="parent-inverse-orrery/">parent-inverse-orrery</a></h2>
@@ -959,12 +959,12 @@ <h2><a href="market-stall/">market-stall</a></h2>
959959
</article>
960960
<article class="card" data-tags="mesh export showcase">
961961
<a class="card-media" href="street-lantern/" tabindex="-1" aria-hidden="true">
962-
<img src="assets/street-lantern-hero.webp" alt="A black iron street lamp post with an arm holding a hanging lantern with glowing panes." loading="lazy" decoding="async" />
962+
<img src="assets/street-lantern-hero.webp" alt="A black iron street lamp post with aged brass collars and a knee brace under the arm, holding a hanging lantern with glowing panes." loading="lazy" decoding="async" />
963963
</a>
964964
<div class="card-body">
965965
<h2><a href="street-lantern/">street-lantern</a></h2>
966966
<p class="teaches">A procedural hanging street lantern through UVs, bake, LOD, collider, and Unity glTF, asserting recomputed budgets rather than an API contract.</p>
967-
<p class="witnesses"><span class="tag">witnesses</span> Recomputed: 3338 tris, three materials with 1530 metal, 24 glass and 209 brass faces, UVs in 0..1 with zero AABB overlap, outer AABB 0.300×0.786×1.287 m, zmin 0, hygiene 0, brace BVH gap 0, hanger-roof gap −1 mm, post 0.100×1.120 m plumb 0, LOD ratios in band (5.2 COLLAPSE 2 tris leaner on LOD2), convex collider 78 tris, non-empty glTF. --skip-decimate exits 9; --stray-vert 15; --lift-z 16; --float-brace 17; --sink-arm 18; --rake-post 19.</p>
967+
<p class="witnesses"><span class="tag">witnesses</span> Recomputed: 3338 tris, three materials with 1530 metal, 24 glass and 209 brass faces, UVs in 0..1 with zero AABB overlap, outer AABB 0.300×0.786×1.287 m, zmin 0, hygiene 0, brace BVH gap 0, brace ends 13 mm into the post and the arm, hanger-roof gap −1 mm, post 0.100×1.120 m plumb 0, LOD ratios in band (5.2 COLLAPSE 2 tris leaner on LOD2), convex collider 78 tris, non-empty glTF. --skip-decimate exits 9; --stray-vert 15; --lift-z 16; --float-brace 17; --sink-arm 18; --rake-post 19; --shallow-brace 20.</p>
968968
<a class="card-link" href="street-lantern/">View showcase piece<span class="sr-only"> street-lantern</span> <span aria-hidden="true">&rarr;</span></a>
969969
</div>
970970
</article>
@@ -1003,12 +1003,12 @@ <h2><a href="fence-kit/">fence-kit</a></h2>
10031003
</article>
10041004
<article class="card" data-tags="mesh export showcase">
10051005
<a class="card-media" href="watchtower/" tabindex="-1" aria-hidden="true">
1006-
<img src="assets/watchtower-hero.webp" alt="A timber watchtower on braced legs with a ladder, railed platform and a pale shingled pyramid roof." loading="lazy" decoding="async" />
1006+
<img src="assets/watchtower-hero.webp" alt="A grained timber watchtower on braced legs with a ladder, a railed platform on deck girts, rusted iron collars and a shingled pyramid roof." loading="lazy" decoding="async" />
10071007
</a>
10081008
<div class="card-body">
10091009
<h2><a href="watchtower/">watchtower</a></h2>
10101010
<p class="teaches">A procedural timber watchtower through UVs, bake, LOD, collider, and Unity glTF, asserting recomputed budgets rather than an API contract.</p>
1011-
<p class="witnesses"><span class="tag">witnesses</span> Recomputed: 6408 tris, three materials with 300 metal and 126 roof faces, UVs in 0..1 with zero AABB overlap, outer AABB 1.594×1.594×2.973 m, grounded zmin, 4 iron shoes, rail engage 18 mm, collar standoff 2 mm, post plumb 0, LOD ratios in band (5.2 COLLAPSE leaner on LOD2), convex collider 150 tris, non-empty glTF. Hygiene all zero. --skip-decimate exits 9; --stray-vert 15; --lift-z/--short-shoes 16; --short-rails 17; --float-band 18; --rake-posts 19.</p>
1011+
<p class="witnesses"><span class="tag">witnesses</span> Recomputed: 6840 tris, three materials with 300 metal and 126 roof faces, UVs in 0..1 with zero AABB overlap, outer AABB 1.594×1.594×2.973 m, grounded zmin, 4 iron shoes, rail engage 18 mm, all four side rails tenoned at both ends, both joists bearing 31 mm into deck girts, collar standoff 2 mm, post plumb 0, LOD ratios in band (5.2 COLLAPSE leaner on LOD2), convex collider 150 tris, non-empty glTF. Hygiene all zero. --skip-decimate exits 9; --stray-vert 15; --lift-z/--short-shoes 16; --short-rails/--open-sides/--short-joists 17; --float-band 18; --rake-posts 19.</p>
10121012
<a class="card-link" href="watchtower/">View showcase piece<span class="sr-only"> watchtower</span> <span aria-hidden="true">&rarr;</span></a>
10131013
</div>
10141014
</article>

0 commit comments

Comments
 (0)