drag to orbit
Prop · 1 moving part
Seesaw
A 3.4 m playground seesaw: a long beam with a seat and a handle at each end, balanced on a steel fulcrum stand. The beam is a part named beam that rocks about z (±14°) until a seat end meets its half-buried tyre bumper.
- Size
- 3.4 × 1.1 × 0.60 m
- Triangles
- 748
Tune it
4 knobs: Colour, Handles, Bumpers, Seats.
Specs
- Size
- 3.4 × 1.1 × 0.60 m width × height × depth
- Triangles
- 748 of 6,000
- Draw calls
- 1 one vertex-colour material
- Moving parts
- 1 beam · rotate
- Knobs
- 4 2 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/seesaw.mjs';
const seesaw = createAsset();
scene.add(seesaw); // rests on y = 0, front faces +Z
// 'beam' pivots on its hinge: -14° to 14° around z
seesaw.getObjectByName('beam').rotation.z = THREE.MathUtils.degToRad(-14);import { useMemo } from 'react';
import { createAsset } from 'https://gaitkit.com/cdn/seesaw.mjs';
export function Seesaw() {
const model = useMemo(() => createAsset(), []);
return <primitive object={model} />;
}# Import seesaw.glb (download below). Moving parts are separate nodes, pivoted on their hinge.
$Seesaw/beam.rotation_degrees.z = -14// Import seesaw.glb with glTFast (com.unity.cloud.gltfast).
transform.Find("beam").localEulerAngles = new Vector3(/* z: */ -14, 0, 0);Use the gaitkit MCP server: get_variant({ "id": "seesaw", "want": "default look" })
then place the result.
# MCP endpoint
https://gaitkit.com/mcpKnobs
| Knob | Type | Values | Default | What it does |
|---|---|---|---|---|
colour | choice | red blue yellow green timber | blue | Beam colour: red, blue, yellow or green painted steel, or timber (a varnished wooden plank). |
handles | choice | bar hoop horse | bar | Handle in front of each seat: bar (T-shaped grip on a post), hoop (a curved loop over the beam), horse (a chunky wooden horse head with a grip peg through it, toddler style). |
bumpers | toggle | on / off | true | Old tyres half buried under each seat to soften the landing. |
seats | choice | pad saddle | pad | pad (flat padded seat), saddle (a raised seat with a low backrest). |
Presets: wooden horse seesaw {"colour":"timber","handles":"horse","seats":"saddle"} · school yard seesaw {"colour":"red","handles":"hoop"}
Files
| File | What |
|---|---|
| seesaw.glb | GLB, default look · 92 KB |
| seesaw.mjs | ES module, every knob live |
| seesaw.obj | OBJ, static, no colour |
| seesaw-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.