Western Windmill
A farm water-pumping windmill: a lattice steel (or timber) tower with a ladder, a many-bladed wheel facing +Z and a tail vane behind it, a pump rod running down to a pump that fills a round stock tank. The wheel spins about z and the pump rod slides up and down; userData.tick(d) drives both and bakes a Loop clip.
- Size
- 5.8 × 11.7 × 5.3 m
- Triangles
- 2,608
- Kit
- Wild West
Tune it
5 knobs: Height, Tower, Blades, Tail vane, Stock tank.
Specs
- Size
- 5.8 × 11.7 × 5.3 m width × height × depth
- Triangles
- 2,608 of 6,000
- Draw calls
- 1 one vertex-colour material
- Loop clip
- 12.566 m of travel per cycle
- Moving parts
- 2 wheel · spin, pump_rod · slide
- Knobs
- 5 3 presets
- Night lights
- 0 none
Passed the validator: real scale, rests on y = 0, front faces +Z, deterministic.
Use it
Code for the specimen as it is set up above; it follows your knobs.
import { createAsset } from 'https://gaitkit.com/cdn/western-windmill.mjs';
const westernWindmill = createAsset();
scene.add(westernWindmill); // rests on y = 0, front faces +Zimport { useMemo } from 'react';
import { createAsset } from 'https://gaitkit.com/cdn/western-windmill.mjs';
export function WesternWindmill() {
const model = useMemo(() => createAsset(), []);
return <primitive object={model} />;
}# Import western-windmill.glb (download below). Moving parts are separate nodes, pivoted on their hinge.
add_child(preload("res://western-windmill.glb").instantiate())// Import western-windmill.glb with glTFast (com.unity.cloud.gltfast).
// Drop it in the scene: 1 unit = 1 metre, +Z is its front.Use the gaitkit MCP server: get_variant({ "id": "western-windmill", "want": "default look" })
then place the result.
# MCP endpoint
https://gaitkit.com/mcpKnobs
| Knob | Type | Values | Default | What it does |
|---|---|---|---|---|
height | range | 6 to 14, step 0.5 | 9 | Tower height in metres to the platform under the wheel. 6 is a small homestead pump, 14 a tall one that clears the trees. |
tower | choice | steel timber | steel | steel (galvanised angle-iron lattice) or timber (heavy wooden derrick with plank bracing). |
blades | choice | 12 18 24 | 18 | Number of sheet-metal blades on the wheel: 12 (sparse, early), 18 (classic), 24 (dense, big-pump wheel). |
vane | color | any colour | #a8483a | Paint on the tail vane that keeps the wheel into the wind (blank, no lettering). #a8483a red, #d8cdb5 cream, #3e5566 blue, #8f9396 bare steel. |
tank | toggle | on / off | true | Round galvanised stock tank full of water beside the tower, fed by the pump spout. |
Presets: homestead pump {"height":6.5,"blades":12,"tower":"timber","vane":"#d8cdb5"} · ranch windmill {"height":10,"blades":18} · tall steel mill {"height":14,"blades":24,"vane":"#8f9396","tank":false}
Files
| File | What |
|---|---|
| western-windmill.glb | GLB, default look · 367 KB |
| western-windmill.mjs | ES module, every knob live |
| western-windmill.obj | OBJ, static, no colour |
| western-windmill-params.json | knob schema, presets, night zones |
Licence
Use it in games, apps, renders and client work, commercially and without credit. Do not resell it as an asset or train a 3D generator on it. The full licence.