drag to orbit
Prop · 4 moving parts
Wardrobe
A 2 m tall, 60 cm deep wardrobe with two hinged doors that open on a hanging rail of clothes and a top shelf, and a row or more of sliding drawers below. One door can carry a full-length mirror.
- Size
- 1.2 × 2.0 × 0.63 m
- Triangles
- 848
- Kit
- Interiors
Tune it
4 knobs: Width, Finish, Mirror door, Drawer rows.
Specs
- Size
- 1.2 × 2.0 × 0.63 m width × height × depth
- Triangles
- 848 of 6,000
- Draw calls
- 1 one vertex-colour material
- Moving parts
- 4 drawer_0 · slide, drawer_1 · slide, door_0 · rotate, door_1 · rotate
- Knobs
- 4 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/wardrobe.mjs';
const wardrobe = createAsset();
scene.add(wardrobe); // rests on y = 0, front faces +Z
// 'door_0' pivots on its hinge: -100° to 0° around y
wardrobe.getObjectByName('door_0').rotation.y = THREE.MathUtils.degToRad(-100);import { useMemo } from 'react';
import { createAsset } from 'https://gaitkit.com/cdn/wardrobe.mjs';
export function Wardrobe() {
const model = useMemo(() => createAsset(), []);
return <primitive object={model} />;
}# Import wardrobe.glb (download below). Moving parts are separate nodes, pivoted on their hinge.
$Wardrobe/door_0.rotation_degrees.y = -100// Import wardrobe.glb with glTFast (com.unity.cloud.gltfast).
transform.Find("door_0").localEulerAngles = new Vector3(/* y: */ -100, 0, 0);Use the gaitkit MCP server: get_variant({ "id": "wardrobe", "want": "default look" })
then place the result.
# MCP endpoint
https://gaitkit.com/mcpKnobs
| Knob | Type | Values | Default | What it does |
|---|---|---|---|---|
width | range | 0.9 to 1.6, step 0.1 | 1.2 | Width in metres, 0.9 to 1.6. Height is always 2 m and depth 60 cm. |
wood | choice | oak walnut white sage black | oak | Finish: oak (honey wood), walnut (dark wood), white, sage (painted green) or black. Painted and dark finishes get brass pulls. |
mirror | toggle | on / off | false | Full-length mirror on the right-hand door. |
drawers | range | 0 to 3, step 1 | 1 | Rows of paired sliding drawers under the doors, 0 to 3. More rows means shorter doors and shorter hanging space. |
Presets: hotel wardrobe {"width":1.4,"wood":"walnut","mirror":true,"drawers":1} · painted armoire {"width":1,"wood":"sage","drawers":2} · minimal closet {"width":1.6,"wood":"white","drawers":0}
Files
| File | What |
|---|---|
| wardrobe.glb | GLB, default look · 139 KB |
| wardrobe.mjs | ES module, every knob live |
| wardrobe.obj | OBJ, static, no colour |
| wardrobe-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.