Repository navigation
Commit abf2134
feat(showcase): add basketball-hoop (sports)
First piece in the sports category: an outdoor in-ground basketball goal.
Parts: an anchor plate with gussets and anchor bolts; a pole swept in one
piece through an S-shaped gooseneck into the mast; a padded pole; two
support braces from a collar to the board's back rail; a framed backboard
with an edge pad, painted border and shooter's square; a regulation rim
on a tapered bracket, bolted through a flange, with 12 net hooks; and a
white cord net of 12 loops hung on the hooks feeding 24 crossing strands.
Blender: E:\Blender-Developer-Tools\.scratch\5.2\blender-5.2.1-windows-x64\blender.exe
reports "Blender 5.2.1 LTS". 4.5 LTS and 5.1 are left to CI (not run locally).
Recomputed budgets (5.2.1):
- 9356 tris (band 8700-10000); LOD1 0.5000, LOD2 0.2200
- 6 materials: steel 2206, board 54, paint 32, rim 916, net 1344, pad 368 faces
- UVs in 0..1, overlap 0; AABB 1.846 x 2.054 x 3.950 m, zmin 0
- collider 200 tris (ceiling 220); bake FINISHED; glTF 694224 B
- hygiene all 0, including coplanar cross-shell pairs
- brace bite 7.03 mm into the collar and 21.76 mm into the rail
- net seat: 12 hooks and 12 loops; worst eye-to-loop distance 7.0 mm (max 9 mm)
- rim top 3.0500 m, ID 0.4570 m, inner edge 0.1510 m off the board, tilt 0.000 deg
- 1 connected component (93 shells)
- two default runs print identical measurements
Falsifiers (flag -> measured -> exit):
- --skip-decimate -> LOD1 ratio 1.0000 -> 9
- --stray-vert -> loose_v 1 -> 15
- --lift-z -> zmin 0.05000 -> 16
- --short-brace -> rail bite -0.02125 m -> 17
- --drop-net -> worst eye-to-loop 0.03200 m -> 18
- --tilt-rim -> rim tilt 3.000 deg -> 19
- --loose-pad -> 2 components [1, 92] -> 20
The envelope was unchanged under every falsifier; --tilt-rim moves Y by
0.9 mm against a 10 mm tolerance.
Render: render_hero.py wrote the hero and preview. Framing: fill y 0.822,
min margin 0.072. Asset-quality floors pass (edge90 0.064); a violation
is remapped to exit 21.
Asset sheet (docs/gallery/asset-sheets/basketball-hoop.webp): not the
least-designed object in the lineup. It shows more distinct parts and
materials than the hydrant, and reads unambiguously as a hoop. It is the
thinnest silhouette, though: a 4 m prop fitted to the panel leaves the
pole and braces as thin lines, and the board face is a large plain area.
Contact sheet: luma 0.256 against calibration 0.237-0.243; stage 0.264
against 0.192-0.252 (slightly bright, closest to bmesh-gear); warm wedge
+0.099 against +0.092/+0.105; saturation 0.224 against 0.153-0.237.
Thumbnail legibility is good: the board, rim and net read. Subject fill
is the weak criterion: the piece is tall and narrow, with 0.82 vertical
fill and 0.20 horizontal.
Also: README, CLAUDE.md and ROADMAP counts and entries; the asset_sheet.py
SELECT row; the gallery regenerated. build_gallery, check_site_links
(92 pages, 0 failures), check_falsifier_targets, check_exit_code_readme,
check_engine_id and check_gallery_images all pass.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>1 parent 910c792 commit abf2134
51 files changed
Lines changed: 5298 additions & 81 deletions
File tree
- .cursor-plugin
- docs/gallery
- anvil
- apothecary-shelf
- asset-sheets
- assets
- basketball-hoop
- book-trolley
- bookshelf
- brazier
- butter-churn
- campfire
- cart
- chopping-block
- contact-sheets
- crate-stack
- fence-kit
- grain-sacks
- grindstone
- hand-pump
- hay-bale
- hitching-post
- iron-cauldron
- market-stall
- park-bench
- rope-bridge
- shipping-crate
- signpost
- stone-archway
- stone-well
- street-lantern
- tavern-stool
- terrain-scatter
- treasure-chest
- wall-torch
- watchtower
- water-trough
- wheelbarrow
- wooden-barrel
- wooden-bucket
- wooden-ladder
- wooden-yoke
- scripts
- showcase
- basketball-hoop
- tests/smoke
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
174 | 174 | | |
175 | 175 | | |
176 | 176 | | |
177 | | - | |
| 177 | + | |
| 178 | + | |
178 | 179 | | |
179 | 180 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
25 | | - | |
| 25 | + | |
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
21 | | - | |
| 21 | + | |
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
| |||
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
40 | | - | |
| 40 | + | |
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
| |||
106 | 106 | | |
107 | 107 | | |
108 | 108 | | |
109 | | - | |
| 109 | + | |
110 | 110 | | |
111 | 111 | | |
112 | 112 | | |
| |||
145 | 145 | | |
146 | 146 | | |
147 | 147 | | |
| 148 | + | |
148 | 149 | | |
149 | 150 | | |
150 | 151 | | |
| |||
215 | 216 | | |
216 | 217 | | |
217 | 218 | | |
| 219 | + | |
| 220 | + | |
218 | 221 | | |
219 | 222 | | |
220 | 223 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
156 | 156 | | |
157 | 157 | | |
158 | 158 | | |
159 | | - | |
| 159 | + | |
160 | 160 | | |
161 | 161 | | |
162 | 162 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
358 | 358 | | |
359 | 359 | | |
360 | 360 | | |
361 | | - | |
| 361 | + | |
362 | 362 | | |
363 | 363 | | |
364 | 364 | | |
| |||
3716 | 3716 | | |
3717 | 3717 | | |
3718 | 3718 | | |
3719 | | - | |
| 3719 | + | |
3720 | 3720 | | |
3721 | 3721 | | |
3722 | 3722 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
358 | 358 | | |
359 | 359 | | |
360 | 360 | | |
361 | | - | |
| 361 | + | |
362 | 362 | | |
363 | 363 | | |
364 | 364 | | |
| |||
3733 | 3733 | | |
3734 | 3734 | | |
3735 | 3735 | | |
3736 | | - | |
| 3736 | + | |
3737 | 3737 | | |
3738 | 3738 | | |
3739 | 3739 | | |
| |||
Loading
Loading
0 commit comments