Repository navigation
Commit 64ceb77
feat(showcase): add farm-tractor (vehicles)
The ninth piece in the vehicles category, things that move: a mid-century
utility farm tractor (generic, no marks, text or maker's livery) standing in
the ruts of a muddy farmyard, a puddle in the right rut between its wheels.
A cast-iron backbone (block, head, sump, bell housing, gearbox, rear axle
centre housing with lift cover, trumpets with brake drums, half-shafts and
hubs); a front axle oscillating on a pivot pin through the front support's
lugs and the beam's boss in two flanged bushings, kingpins, knuckles,
spindles, steering arms and a tie rod on vertical pins. 1.240 m rear tyres
whose carcass carries 44 chevron bars (two staggered halves of 22) rooted in
it and handed for forward travel, on dished rims with welded clamp lugs and
cast-iron half-moon weights; 0.690 m three-rib fronts on ribbed discs. A
grille shell with eleven bars, radiator core, filler cap and headlamps; a
louvred bonnet with a zinc crown strip, a fuel tank lapping it with a bayonet
cap, a dash with gauges; an exhaust stack through a collar with a silencer
barrel and a hinged rain cap; an oil-bath pre-cleaner bowl; fan, pump,
dynamo, fan belt, starter, filter, manifolds. A 45 deg raked column and
wheel, a pan seat on a two-leaf spring, gear lever, pedals, footplates with
anti-slip strips; mudguards on stays with a tail lamp and a work lamp; a
three-point linkage (lower links, lift arms, lift rods with levelling box,
stowed top link, drawbar) and a splined PTO stub under its shield. Twelve
materials; the paint chips to primer and steel in patches along square edges
(an EdgeWear attribute), fades toward the sky, grimes toward the ground and
is rust-streaked and mud-splashed; the rut floors carry the bars' prints.
Budgets (measured, 5.2.1): 122272 tris (121000-123600), LOD 0.5000/0.2198,
12 materials with face floors, UVs 0..1 no overlap, AABB 3.5839x2.0869x
1.7330 (+-0.01, read off the vertices), collider 944 (<=1040), hygiene 0 incl.
0 coplanar cross-shell pairs, zmin 0; 4 tyres sunk 28.9-30.1 mm into the mud
by rays onto the soil (18-45); 4 hubs and the pivot pin against both
bushings 0.0 mm, 0.0 deg (0.3 mm, 0.3 deg); 14 link eyes 0.0 mm off their
pins, pins >= 8.5 mm past both faces (0.5 mm, 1 deg, 2 mm); beads seated
0.683-0.962 mm (0.4-2.0); 88 bars rooted 3.932-3.997 mm (2.0-6.0), 28.3 mm
proud (>= 20); pitch exact (0.25 deg); every bar's apex 10.886 deg ahead of
its shoulder about +Y (>= 5); body and wheels mirrored 0.0001 mm (0.5);
wheelbase 1.7800, tracks 1.2200/1.3200 (+-4 mm), rear tyres 1.2400 m
(+-6 mm); mass centre 0.4151 m inside the support triangle of the rear
contact patches and the front pivot (>= 0.330, a quarter of the rear
track; 1541 kg); one assembly of 505 shells. Two default runs print
identical measurements; 4.5.11 and 5.1.2 print the same (LOD2 26898 vs
26874 tris, export 8 bytes apart).
The first draft measured 2471 coplanar pairs: eleven identical grille bars
side by side (each now steps back and down from the centre out; a plain
per-bar step first broke the bonnet mirror by 4.7 mm), three equal
louvres (each now leans out and is a step longer), clamp-lug bolts on the
lugs' faces, a weight bolt on the weight grip's plane, wheel nuts on the
hub's end cap, the head on the bell-housing flange, equal port flanges, two
spring bolts, a lamp stalk on its collar, the steering shaft on its hub.
Rain-cap and six clamp-lug bolts first floated (10 stray shells). The
edge-wear attribute first spread across whole faces (a rust band down the
grille shell, a fully "chipped" footplate); it now marks square edges only
and those parts carry a vertex ring a few mm in from the edge.
Falsifiers (flag -> measured -> exit), 5.2.1, 4.5.11 and 5.1.2 identical;
tris 122272 and envelope unchanged in all:
--skip-decimate LOD1 1.0000 9
--stray-vert loose_v 1 15
--lift-z zmin 0.05000 16
--float-tyre left front sink -9.889 mm 16
--cock-hub left rear hub 1.5 mm off its half-shaft 17
--cant-pin bushings 1.894 mm, 1.5 deg off the pin 17
--unpin-link top-link rear eye 8.0 mm off its pin 17
--sink-tyre right rear bead seat 2.762 mm 18
--float-lugs left rear bar roots -3.068 mm 18
--skew-wheel wheel mirror 6.000 mm 19
--wide-track rear track 1.3280 m 19
--tall-lugs rear tyres 1.256 m 19
--odd-fender body mirror 3.000 mm 19
--bunch-lugs bar pitch off 2.000 deg 20
--reverse-lugs bar handing -10.886 deg 21
--offset-pivot stance margin 0.3074 m 22
--loose-lamp 2 components [4, 501] 23
--cant-pin first turned the bushings with the pin and exited 0; it now
turns the pin alone. --loose-lamp first exited 0 because the lamp's bezel
rested on the skirt; the lamp now stands clear on its bracket. A mirror of
a rear tyre across the centre plane does not reverse its chevrons (the bars
are symmetric about the tyre's own mid-plane); building the tread about the
wheel's outboard axis does, and --reverse-lugs does exactly that on the
right rear. tests/check_falsifier_targets.py --run --only farm-tractor
passes.
Blender: E:\Blender-Developer-Tools\.scratch\5.2\blender-5.2.1-windows-x64\blender.exe,
reports "Blender 5.2.1 LTS"; default and every falsifier also run on
.scratch\blender-4.5.11-windows-x64 ("Blender 4.5.11 LTS") and
.scratch\blender-5.1.2-windows-x64 ("Blender 5.1.2").
Render: render_hero.py wrote hero (53028 B) and preview (48194 B); framing
fill x 0.712, y 0.861, margins >= 0.050; asset-quality floors pass
(12 materials, edge90 0.048). Default stage, no deviation.
Asset sheet (docs/gallery/asset-sheets/farm-tractor.webp): not the
least-designed object; the hydrant is plainer. Isolated, it reads at once
as a tractor: bonnet and grille, stack and pre-cleaner, lugged rear tyres on
weighted rims, mudguards, seat, linkage. Weak point: the mud patch makes the
tractor smaller in its panel.
Contact sheet (docs/gallery/contact-sheets/farm-tractor-contact-sheet.webp):
luma 0.2408 against 0.2369-0.2428 (in band, after relighting from 0.2499);
stage 0.2303 against 0.1919-0.2517; saturation 0.1624 against
0.1525-0.2367 (the first green/grey livery measured 0.1153 and was
enriched); wedge warmth +0.0464 inside -0.1440/+0.1052. Thumbnail legible.
Also updated: README, CLAUDE.md, AGENTS.md counts (64 -> 65), ROADMAP
Vehicles list (farm tractor struck as shipped), asset_sheet.py SELECT row,
catalog.json, plugin.json and the regenerated gallery. build_gallery,
check_site_links (120 pages, 0 failures), check_falsifier_targets,
check_exit_code_readme, check_engine_id, check_gallery_images and
check_import_export_rules pass.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>1 parent 59ac58d commit 64ceb77
80 files changed
Lines changed: 12079 additions & 139 deletions
File tree
- .cursor-plugin
- docs/gallery
- anvil
- apothecary-shelf
- archery-target
- asset-sheets
- assets
- basketball-hoop
- book-trolley
- bookshelf
- boulder-cluster
- bowling-pins
- brazier
- broadleaf-oak
- butter-churn
- cactus-garden
- campfire
- cargo-loader
- cart
- chopping-block
- contact-sheets
- crate-stack
- desk-lamp
- espresso-machine
- fallen-log
- farm-tractor
- fence-kit
- floor-fan
- go-kart
- grain-sacks
- grindstone
- hand-pump
- hay-bale
- hitching-post
- hover-bike
- iron-cauldron
- market-stall
- motor-scooter
- mushroom-stump
- office-chair
- palm-tree
- park-bench
- pine-tree
- planet-rover
- pond-edge
- quad-drone
- road-bicycle
- rope-bridge
- shipping-crate
- signpost
- skate-ramp
- soccer-goal
- stand-mixer
- stone-archway
- stone-well
- street-lantern
- tavern-stool
- terrain-scatter
- traffic-cones
- treasure-chest
- wall-torch
- watchtower
- water-trough
- weight-rack
- wheelbarrow
- wingback-armchair
- wooden-barrel
- wooden-bucket
- wooden-ladder
- wooden-yoke
- scripts
- showcase
- farm-tractor
- 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 | |
|---|---|---|---|
| |||
202 | 202 | | |
203 | 203 | | |
204 | 204 | | |
205 | | - | |
| 205 | + | |
| 206 | + | |
206 | 207 | | |
207 | 208 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
24 | | - | |
| 24 | + | |
25 | 25 | | |
26 | 26 | | |
27 | 27 | | |
| |||
| 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 | | |
| |||
173 | 173 | | |
174 | 174 | | |
175 | 175 | | |
| 176 | + | |
176 | 177 | | |
177 | 178 | | |
178 | 179 | | |
| |||
299 | 300 | | |
300 | 301 | | |
301 | 302 | | |
| 303 | + | |
| 304 | + | |
302 | 305 | | |
303 | 306 | | |
304 | 307 | | |
| |||
Large diffs are not rendered by default.
| 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 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
358 | 358 | | |
359 | 359 | | |
360 | 360 | | |
361 | | - | |
| 361 | + | |
362 | 362 | | |
363 | 363 | | |
364 | 364 | | |
| |||
5579 | 5579 | | |
5580 | 5580 | | |
5581 | 5581 | | |
5582 | | - | |
| 5582 | + | |
5583 | 5583 | | |
5584 | 5584 | | |
5585 | 5585 | | |
| |||
Loading
Loading
0 commit comments