Office Cubicle
An open-plan office cubicle: fabric partition panels with aluminium trim (1.1 to 1.6 m tall), an L-shaped desk at 74 cm with a drawer pedestal (drawers slide), a monitor whose screen glows at night, keyboard, phone, mug, plant, blank pinned notes and a swivel chair. One cubicle, a pair side by side, or a back-to-back cluster of four. Each opens toward +Z (and -Z for the back row).
- Size
- 3.3 × 1.4 × 1.5 m
- Triangles
- 1,636
Tune it
4 knobs: Layout, Panel height, Fabric, Chairs.
Specs
- Size
- 3.3 × 1.4 × 1.5 m width × height × depth
- Triangles
- 1,636 of 6,000
- Draw calls
- 1 one vertex-colour material
- Moving parts
- 6 drawer_0_0 · slide, drawer_0_1 · slide, chair_0 · rotate, drawer_1_0 · slide, drawer_1_1 · slide, chair_1 · rotate
- Knobs
- 4 3 presets
- Night lights
- 1 screen
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/office-cubicle.mjs';
const officeCubicle = createAsset();
scene.add(officeCubicle); // rests on y = 0, front faces +Z
// 'chair_0' pivots on its hinge: 170° to 240° around y
officeCubicle.getObjectByName('chair_0').rotation.y = THREE.MathUtils.degToRad(170);import { useMemo } from 'react';
import { createAsset } from 'https://gaitkit.com/cdn/office-cubicle.mjs';
export function OfficeCubicle() {
const model = useMemo(() => createAsset(), []);
return <primitive object={model} />;
}# Import office-cubicle.glb (download below). Moving parts are separate nodes, pivoted on their hinge.
$OfficeCubicle/chair_0.rotation_degrees.y = 170// Import office-cubicle.glb with glTFast (com.unity.cloud.gltfast).
transform.Find("chair_0").localEulerAngles = new Vector3(/* y: */ 170, 0, 0);Use the gaitkit MCP server: get_variant({ "id": "office-cubicle", "want": "default look" })
then place the result.
# MCP endpoint
https://gaitkit.com/mcpKnobs
| Knob | Type | Values | Default | What it does |
|---|---|---|---|---|
layout | choice | single pair cluster | pair | single (one cubicle), pair (two side by side sharing a panel) or cluster (four cubicles, two facing +Z and two back-to-back facing -Z). |
height | range | 1.1 to 1.6, step 0.1 | 1.3 | Partition height in metres. 1.1 lets seated people see over, 1.6 gives privacy. |
fabric | choice | grey blue green beige charcoal | blue | Partition fabric colour: grey, blue, green, beige or charcoal. Chairs follow in a darker tone. |
chair | toggle | on / off | true | A swivel office chair in each cubicle (rigged seat that turns). |
Presets: call centre {"layout":"cluster","height":1.2,"fabric":"grey","chair":true} · corner office pod {"layout":"single","height":1.6,"fabric":"beige","chair":true} · empty floor {"layout":"pair","height":1.3,"fabric":"charcoal","chair":false}
Files
| File | What |
|---|---|
| office-cubicle.glb | GLB, default look · 260 KB |
| office-cubicle.mjs | ES module, every knob live |
| office-cubicle.obj | OBJ, static, no colour |
| office-cubicle-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.