Tannery Yard

Saddle-stitch the seat seam of a part-finished saddle clamped in a stitching pony. A marker runs the seam and SPACE sets a stitch where it is - each one a real model node appearing in place - while SHIFT pulls the thread tight, and tension has its own band: slack gapes, over-tight puckers the leather. A saddler's seam is judged on regularity, so evenness is the score. Underneath, the cycle that proved runtime detail maps work - every surface in this workshop carries close-range grain because of it.

Play it now

Tap once for sound - tap/space low = pump, high = release - R resets

▶  Play

The concept is the contract

The piece was concepted first — an AI key-art painting — and its hero assets were then code-modeled in headless Blender and audited against that concept. The pair below is the contract and the build.

AI concept painting
1 · AI concept
live in the engine
The same scene, live in the engine
Concept prompt

A leather workshop yard in late afternoon: a heavy oak workbench with a half-stitched saddle clamped in a stitching pony, coiled belts and hides, brass buckles and awls laid out on the bench, and worn stone flags underfoot.

Code-modeled in Blender

The hero assets were modelled by agents writing Blender code against the platform sculpt kit — no downloaded models anywhere — and rendered by the studio harness for audit before entering the engine scene.

Blender studio render 1
Blender studio render 1 — code-modeled, rendered by the studio harness
Blender studio render 2
Blender studio render 2 — code-modeled, rendered by the studio harness
Blender studio render 3
Blender studio render 3 — code-modeled, rendered by the studio harness
Blender studio render 4
Blender studio render 4 — code-modeled, rendered by the studio harness
Blender studio render 5
Blender studio render 5 — code-modeled, rendered by the studio harness

Made by AI, compiled by the real Unity 6 engine

This piece is an experiment with its control group left visible. In ninety cycles this lab had never once used Unity's own animation system — every piece animated by hand in code — and two engine features tested here before, distance fog and GPU instancing, turned out to be silently stripped from a code-built WebGL build. An AnimationClip built entirely at runtime is the same shape of thing: no saved asset, nothing for the build pipeline to see and keep. So the lion's head is loaded twice. The left head is driven by the runtime clip; the right head is driven by hand with the same curve, the same period and the same amplitude. The panel reports how far each one actually travelled since boot, because a rig that never leaves its starting value is inert no matter how alive the scene looks. Both bindings pass — position and rotation alike — and the clip matches its control to three digits, which is the opposite of what fog and instancing did. The lion, drum, drummer and lanterns are code-modeled Blender exports; the head is seated on the body from its measured renderer bounds rather than by eye.