Commit bc898b4
feat(showcase): add weight-rack (sports)
The third piece in the sports category: a home-gym half rack holding a
loaded Olympic barbell. Four 3 in square uprights (2.08 m) on bolted base
plates over padded, end-capped feet, 23 punched hole pockets per face on a
2 in pitch with raised numerals on the front uprights, side rails on bolted
flanges, a rear crossmember, a zinc pull-up bar with welded collars and
capped tops. J-hooks (J-section plate, UHMW-lined saddle) and spotter arms
(mount plate, gusset, UHMW strip, end cap) hang on pull pins seated in the
holes. The bar is one turned body (knurled shaft, centre knurl, ring marks,
collars, grooved sleeves, recessed end caps) loaded per side with a 20 kg
and a 15 kg bumper (steel hub, raised rim, raised kg/lb numerals) and a 5 kg
cast-iron plate behind a coiled spring clip with rubber grips. Four storage
horns on weld plates hold five more plates; two hex dumbbells lie on the
floor. Twelve materials: powder coat, bore, zinc, chrome, knurl, rubber,
UHMW, numeral, blue, yellow and green bumper, cast iron.
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):
- 44264 tris (band 43500-45000); LOD1 0.5000, LOD2 0.2197
- 12 materials: powder 4758, bore 3036, zinc 4196, chrome 3348, knurl 256,
rubber 1328, UHMW 104, numeral 3112, blue 864, yellow 576, green 576,
iron 2240 faces
- UVs in 0..1, overlap 0; AABB 2.2000 x 1.6364 x 2.0920 m, zmin 0
- collider 598 tris (ceiling 640); bake FINISHED; glTF 3303420 B
- hygiene all 0, zero coplanar cross-shell pairs (first draft 264: plate
bores shared the sleeve's cylinder and phase, a bumper numeral top sat on
the iron plate's plane, a hole numeral wall on the J-hook side; fixed in
the model by turning bores a third of a segment apart, lowering the
numerals to 0.8 mm and narrowing the J-hook 1 mm)
- 4 pads and 4 dumbbell heads each at zmin 0
- 4 pull pins 0.000 mm off their holes' axes (read from the pocket
floors), 7.0 mm deep
- bar seated -0.20 mm in both saddles, tilt 0.0000 deg, length 2.2000 m,
uprights 2.0800 m, bumpers 0.450 m
- 12 plates on 6 sleeves, 0.80 mm off axis (they hang on the sleeve), all
14 stop/plate/clip gaps -0.50 mm (band -0.8 to -0.2)
- loaded bar 96.4 kg, mass centre 0.002 mm off its midpoint (tol 2 mm)
- 3 components (the rack and two dumbbells), 222 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
- --float-foot -> left front pad zmin 0.00300 -> 16
- --offset-pin -> left spotter pin 0.012 m off its hole axis -> 17
- --float-bar -> shaft-to-liner +0.0048 m both saddles -> 18
- --hook-high -> right hook one hole up, bar tilt 2.644 deg -> 19
- --gap-plate -> right iron plate gap +0.0075 m -> 20
- --odd-load -> left 5 kg swapped for 2.5 kg, mass centre 0.0226 m -> 21
- --loose-horn -> 4 components -> 22
Tris unchanged under every falsifier, envelope within 0.2 mm, every earlier
budget green (hook-high keeps pins coaxial and seats at -0.215 mm;
gap-plate moves the mass centre 0.4 mm, inside tolerance).
Render: render_hero.py wrote hero and preview. Framing fill x 0.422,
y 0.883, margins >= 0.039. The rack is about as wide as it is tall, so in
16:9 the vertical axis binds; yaw 42 deg measured x 0.400, no better.
Asset-quality floors pass (edge90 0.243); a violation remaps to exit 23.
Asset sheet (docs/gallery/asset-sheets/weight-rack.webp): not the least-
designed object in the lineup; the hydrant is plainer. It reads at once as
a loaded rack: numbered hole rows, plates with rims and numerals, horns,
spotters, dumbbells. Weak points: the J-hooks hide behind the plates, the
crossmembers are plain tubes, and the panel tool's fit crops the tall
rack's caps slightly.
Contact sheet: luma 0.2390 against calibration 0.2369-0.2428 (in band).
Stage 0.2089 against 0.1919-0.2517 (in band). Wedge warmth +0.1007 against
-0.1440/+0.1052/+0.0921 (warm, in spread). Saturation 0.2335 against
0.1525-0.2367 (upper end: red frame, coloured bumpers). Thumbnail
legibility good. The first draft measured luma 0.2028; relit by raising
the key, fill and wedge.
Also updated: README, CLAUDE.md and ROADMAP counts and entries, the
asset_sheet.py SELECT row, catalog.json, plugin.json and the regenerated
gallery. build_gallery, check_site_links (100 pages, 0 failures),
check_falsifier_targets, check_exit_code_readme, check_engine_id,
check_gallery_images and the count check all pass.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>1 parent 1e807db commit bc898b4
59 files changed
Lines changed: 6809 additions & 98 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
- desk-lamp
- fallen-log
- fence-kit
- grain-sacks
- grindstone
- hand-pump
- hay-bale
- hitching-post
- hover-bike
- iron-cauldron
- market-stall
- office-chair
- park-bench
- pine-tree
- quad-drone
- rope-bridge
- shipping-crate
- signpost
- soccer-goal
- stone-archway
- stone-well
- street-lantern
- tavern-stool
- terrain-scatter
- treasure-chest
- wall-torch
- watchtower
- water-trough
- weight-rack
- wheelbarrow
- wooden-barrel
- wooden-bucket
- wooden-ladder
- wooden-yoke
- scripts
- showcase
- weight-rack
- 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 | |
|---|---|---|---|
| |||
182 | 182 | | |
183 | 183 | | |
184 | 184 | | |
185 | | - | |
| 185 | + | |
| 186 | + | |
186 | 187 | | |
187 | 188 | | |
| 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 | | |
| |||
153 | 153 | | |
154 | 154 | | |
155 | 155 | | |
| 156 | + | |
156 | 157 | | |
157 | 158 | | |
158 | 159 | | |
| |||
239 | 240 | | |
240 | 241 | | |
241 | 242 | | |
| 243 | + | |
| 244 | + | |
242 | 245 | | |
243 | 246 | | |
244 | 247 | | |
| |||
| 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