Survivor Shelter
A makeshift shack of mismatched corrugated sheets on a scrap-timber frame, roofed with tin and a tied-down tarp weighed with tyres. A stovepipe pokes through the roof, the door is a hinged part (rotates on y), and a fire barrel by the door and the window glow warm at night.
- Size
- 4.5 × 3.0 × 4.3 m
- Triangles
- 2,426
- Kit
- Wasteland
Tune it
4 knobs: Size, Tarp, Fire, Seed.
Specs
- Size
- 4.5 × 3.0 × 4.3 m width × height × depth
- Triangles
- 2,426 of 6,000
- Draw calls
- 1 one vertex-colour material
- Moving parts
- 1 door · rotate
- Knobs
- 4 3 presets
- Night lights
- 2 fire, window
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/survivor-shelter.mjs';
const survivorShelter = createAsset();
scene.add(survivorShelter); // rests on y = 0, front faces +Z
// 'door' pivots on its hinge: -100° to 0° around y
survivorShelter.getObjectByName('door').rotation.y = THREE.MathUtils.degToRad(-100);import { useMemo } from 'react';
import { createAsset } from 'https://gaitkit.com/cdn/survivor-shelter.mjs';
export function SurvivorShelter() {
const model = useMemo(() => createAsset(), []);
return <primitive object={model} />;
}# Import survivor-shelter.glb (download below). Moving parts are separate nodes, pivoted on their hinge.
$SurvivorShelter/door.rotation_degrees.y = -100// Import survivor-shelter.glb with glTFast (com.unity.cloud.gltfast).
transform.Find("door").localEulerAngles = new Vector3(/* y: */ -100, 0, 0);Use the gaitkit MCP server: get_variant({ "id": "survivor-shelter", "want": "default look" })
then place the result.
# MCP endpoint
https://gaitkit.com/mcpKnobs
| Knob | Type | Values | Default | What it does |
|---|---|---|---|---|
size | range | 2.5 to 5, step 0.25 | 3.5 | Frontage in metres; depth is three quarters of it. 2.5 is a one-person hut, 5 a family shack. |
tarp | choice | blue olive orange tan | blue | Colour of the tarp lashed over the roof and hanging down one side: blue, olive (military), orange, tan (canvas). |
fire | toggle | on / off | true | Fire burning in an oil drum by the door, glowing through its holes after dark; the window glows from the stove either way. |
seed | range | 1 to 50, step 1 | 3 | Reshuffles which sheet goes where, their colours, tilts and the clutter outside. Build a camp with different seeds. |
Presets: army hut {"tarp":"olive","size":4,"seed":8} · one-person hovel {"size":2.5,"tarp":"orange","seed":21} · cold camp {"fire":false,"tarp":"tan","seed":12}
Files
| File | What |
|---|---|
| survivor-shelter.glb | GLB, default look · 310 KB |
| survivor-shelter.mjs | ES module, every knob live |
| survivor-shelter.obj | OBJ, static, no colour |
| survivor-shelter-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.