Skip to content

Commit b7c8a7f

Browse files
TMHSDigitalclaude
andcommitted
fix(showcase):
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1 parent 70f0cc3 commit b7c8a7f

4 files changed

Lines changed: 208 additions & 67 deletions

File tree

-1.37 KB
Loading

‎showcase/cricket-wicket/README.md‎

Lines changed: 40 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
# cricket-wicket
22

3-
![A cricket wicket of three lacquered ash stumps with two stained bails lying in their grooves, driven through a slab of turf with a chalked bowling crease, a worn patch and a red leather ball resting on it](preview.webp)
3+
![A cricket wicket of three lacquered ash stumps, red-scuffed where the ball has struck, with two turned bails lying in their grooves, driven through a strip of turf worn bare along the chalked bowling crease, a red leather ball in front](preview.webp)
44

55
A cricket wicket as Law 8 of the Laws of Cricket describes it: three
66
turned ash stumps, 28 inches proud of the turf and 9 inches wide over
77
their outer faces, each with a shoulder, a neck and a grooved domed crown;
8-
two stained bails whose spigots lie in the grooves and whose barrels hang
9-
across the gaps; a slab of turf with a worn bare patch, a chalked bowling
10-
crease and grass tufts; and a red leather ball with a raised seam resting
11-
on the patch. **A showcase piece, not an example** — it witnesses no API
8+
two turned bails whose spigots lie in the grooves and whose collared
9+
barrels hang across the gaps; a tight strip of turf worn bare along a
10+
chalked bowling crease, its grass thickening toward the edges; and a red
11+
leather ball with a raised seam resting in front of the stumps. **A showcase piece, not an example** — it witnesses no API
1212
contract. It asserts that generated geometry meets declared asset budgets,
1313
recomputed from the finished mesh.
1414

@@ -18,7 +18,7 @@ recomputed from the finished mesh.
1818
| --- | --- |
1919
| `skills/mesh-editing-and-bmesh` | lathed stumps, bails and ball, a lofted turf slab, bipyramid grass blades, all in one `bmesh` |
2020
| `skills/custom-properties` | face attributes (`PlankTone`, `GrainDir`) read by the wood and grass shaders |
21-
| `skills/procedural-materials-and-shaders` | lacquered ash with turned bands, stained bail wood, turf, earth, chalk, grass, leather, thread |
21+
| `skills/procedural-materials-and-shaders` | lacquered ash with turned bands and red ball scuffs that knock off the lacquer, stained bail wood, turf, earth, chalk, grass, leather, thread |
2222
| `skills/bake-high-to-low` | Cycles tangent-space normal bake, high onto low |
2323
| `skills/engine-export-presets` | Unity glTF (`export_yup=True`) |
2424
| `skills/depsgraph-and-evaluated-data` | evaluated triangle counts for the LOD ratios |
@@ -64,22 +64,22 @@ mesh. Measured values are from Blender 5.2.1.
6464

6565
| Budget | Band | Measured |
6666
| --- | --- | --- |
67-
| Base triangles | 5900–6600 | 6260 |
67+
| Base triangles | 6100–6800 | 6448 |
6868
| LOD1 ratio | 0.32–0.62 | 0.5000 |
69-
| LOD2 ratio | 0.10–0.35 | 0.2198 |
69+
| LOD2 ratio | 0.10–0.35 | 0.2199 |
7070
| Material slots | exactly 8, distinct | 8 |
71-
| Face floors (ash / bail / turf / earth / chalk / blade / leather / seam) | ≥ 1300 / 450 / 170 / 150 / 6 / 1250 / 180 / 220 | 1344 / 480 / 192 / 176 / 6 / 1344 / 200 / 240 |
71+
| Face floors (ash / bail / turf / earth / chalk / blade / leather / seam) | ≥ 1300 / 630 / 100 / 135 / 6 / 1250 / 180 / 220 | 1344 / 672 / 112 / 152 / 6 / 1344 / 200 / 240 |
7272
| UV bounds | inside 0..1 | (0.0012, 0.0011)–(0.9988, 0.9944) |
7373
| UV AABB overlap | ≤ 1e-5 | 0.000000 |
74-
| Outer AABB | 1.006 × 0.606 × 0.7359 m ± 0.010 | 1.0060 × 0.6060 × 0.7359 |
75-
| Collider triangles | ≤ 360 | 308 (seven hulls) |
74+
| Outer AABB | 0.646 × 0.406 × 0.7359 m ± 0.010 | 0.6460 × 0.4060 × 0.7359 |
75+
| Collider triangles | ≤ 360 | 294 (seven hulls) |
7676
| Normal bake | `{'FINISHED'}` with image data | `{'FINISHED'}`, `has_data=True` |
77-
| glTF export | file written, non-empty | ~270 kB |
77+
| glTF export | file written, non-empty | ~278 kB |
7878
| Hygiene | all zero | loose 0/0, non-manifold 0, zero-area 0, doubles 0, n-gons 0, coplanar cross-shell pairs 0 |
7979
| Grounded AABB | \|zmin\| ≤ 1e-4 | 0.00000 |
8080
| Named stumps | 3 stumps, each foot z ≤ 1e-4 | 3 at 0.00000 |
8181
| Spigot tip on its neck | 4 tips, ≥ 0.5 mm inside the neck radius | 1.03 mm |
82-
| Barrel clear of stumps | ≥ 0.5 mm in x at the barrel's height | 5.92 mm |
82+
| Barrel clear of stumps | ≥ 0.5 mm in x at the barrel's height | 6.92 mm |
8383
| Bail pair | gap between the two short spigots ≥ 0.3 mm | 0.85 mm |
8484
| Spigot seat | 4 spigots, lowest point 0.5–2.0 mm below the groove floor | 0.92–1.00 mm |
8585
| Chalk line | 0.8–3.0 mm proud of the turf, ≥ 0.5 mm bitten in | 1.50 / 1.00 mm |
@@ -105,19 +105,29 @@ mesh. Measured values are from Blender 5.2.1.
105105
crown's highest vertex is found by evaluating the crown once, and the
106106
crown is placed so that vertex lands exactly 711.2 mm above the turf.
107107
- **Bails.** One lathe each along X: a 34.9 mm long spigot, a 54 mm
108-
barrel with rounded ends, a 22.2 mm short spigot, 111.1 mm in all as
108+
barrel turned with a crisp shoulder off each spigot and a full-width
109+
collar set off from a slightly slimmer body by a V-cut bead line, a
110+
22.2 mm short spigot, 111.1 mm in all as
109111
Law 8 gives. The long spigot lies on an outer stump, the short on the
110112
middle one. Each is shifted 1.6 mm outward so the two short spigots meet
111113
without touching. The right bail's facets are turned half a segment: two
112114
collinear cylinders share facet planes, and a coplanar cross-shell pair
113115
is exactly what the hygiene budget forbids.
114-
- **Turf.** A grid slab, 20 × 12 cells, whose outer ring rolls down 3 mm
115-
and drops in a wall to a fan-filled floor. Faces inside the worn ellipse
116-
take the earth slot. The chalk is a box sunk 1 mm into the turf and 1.5
116+
- **Turf.** A tight 0.64 × 0.40 m strip of pitch, a grid of 16 × 10
117+
cells whose outer ring rolls down 3 mm and drops in a wall to a
118+
fan-filled floor. The bowling crease runs through the stumps' line
119+
(Law 7); the popping crease, 1.22 m in front, is off the strip. Faces
120+
inside a worn ellipse centred on the crease take the earth slot. The
121+
floor fan's centre sits off the stump line: on the slab's centre it
122+
welds to the middle stump's spike point, a double at the origin. The
123+
chalk stops at the last flat cell so it never rides the roll. The chalk is a box sunk 1 mm into the turf and 1.5
117124
mm proud, so it sits in the turf rather than on its plane.
118125
- **Grass.** Fifty-six tufts of three bipyramid blades, a fixed-seed
119-
`random.Random(11)`. Each blade's base ring is turned by a random angle,
120-
because blades in one tuft otherwise shared facet planes.
126+
`random.Random(11)`, kept with a probability that rises toward the
127+
slab's edges and stays off the worn crease. Tuft roots are at least
128+
24 mm apart. A tuft's three blades are turned a third of a quarter-turn
129+
apart, and each blade's root depth walks a golden-ratio sequence, so no
130+
two blades share a buried facet plane.
121131
- **Ball.** A 72 mm lathe sphere on a tilted axis, lowered until its
122132
lowest vertex is 0.6 mm below the turf top, with a 40-segment torus seam
123133
on its great circle, seated so it stands 1 mm proud.
@@ -129,12 +139,16 @@ mesh. Measured values are from Blender 5.2.1.
129139
Turning one bail half a segment took it to 0.
130140
- **Coplanar grass.** The remaining 18 pairs were blades in one tuft with
131141
identical diamond base rings. A random ring phase per blade fixed them.
142+
Crowding the tufts toward the edges in the quality pass brought 2 pairs
143+
back, from blades in different tufts that happened to line up on one
144+
tilted plane; a stratified phase per tuft and a golden-ratio root depth
145+
per blade took them to 0.
132146
- **UV fan overlap.** The slab floor is a triangle fan, and a planar map
133147
of a fan overlaps the triangles' AABBs (2.28 in total). It is unrolled
134148
into one strip per triangle.
135149
- **Collider.** Hulls over every second vertex of every ring came to 802
136150
triangles. Hulls over the rings where the silhouette turns, every
137-
fourth vertex, are 308.
151+
fourth vertex, are 308 (294 on the tighter slab).
138152
- **A falsifier that missed its target (inspection-only at first).**
139153
`--fat-bails` at a 17.5 mm barrel stood the bails 12.2 mm proud, inside
140154
Law 8's 12.7 mm, and exited 0. At 19.0 mm it stands 13.7 mm proud and
@@ -161,7 +175,7 @@ Every convention in `showcase/README.md`, and whether it applies here.
161175
| Rope, masonry, roofs, vessels, scatter | n/a | grass tufts are decoration, not a scatter budget |
162176
| Shading is part of the model | yes | stumps, bails, ball smooth (turned); every edge over 40° hard (slab, groove walls, blades) |
163177
| One substance, one slot | yes | ash, bail wood, turf, earth, chalk, grass, leather, thread |
164-
| Edge treatment: no right angles | n/a | turned and lofted, no box edges; the asset-quality `edge90` is 0.088 |
178+
| Edge treatment: no right angles | n/a | turned and lofted, no box edges; the asset-quality `edge90` is 0.090 |
165179
| Material face floors | yes | all eight slots |
166180
| The bake cage is narrower than the nearest neighbour | yes | `CAGE_EXTRUSION` 4 mm, well under the 59 mm gaps |
167181
| Level on the stage; stage 60 m | yes | turned about Z only; 60 m floor and wall |
@@ -241,10 +255,10 @@ Blender 5.2.1 only; 4.5.11 and 5.1.2 were not available locally.
241255

242256
| Value | 5.2.1 |
243257
| --- | --- |
244-
| Base triangles | 6260 |
245-
| LOD1 / LOD2 tris | 3130 / 1376 |
246-
| Face counts (ash / bail / turf / earth / chalk / blade / leather / seam) | 1344 / 480 / 192 / 176 / 6 / 1344 / 200 / 240 |
247-
| Outer AABB | 1.0060 × 0.6060 × 0.7359 |
248-
| Collider tris | 308 |
258+
| Base triangles | 6448 |
259+
| LOD1 / LOD2 tris | 3224 / 1418 |
260+
| Face counts (ash / bail / turf / earth / chalk / blade / leather / seam) | 1344 / 672 / 112 / 152 / 6 / 1344 / 200 / 240 |
261+
| Outer AABB | 0.6460 × 0.4060 × 0.7359 |
262+
| Collider tris | 294 |
249263
| Stump 711.2 mm, 36.5 mm, 228.6 mm, gaps 59.55 mm | exact |
250264
| Spigot seats | 0.92–1.00 mm |

0 commit comments

Comments
 (0)