Gaitkit Open the lab
Fire Truck, A 10 m aerial ladder fire truck with a crew cab, equipment lockers and a rear turntable. The turntable turns about y (turntable), the ladder lifts about x (ladder) and its fly section slides out along it (ladder_fly); wheels roll with distance. Headlights, tail lights and the roof beacons glow at night. No crests, numbers or text.
Vehicle · Rolls with distance

Fire Truck

A 10 m aerial ladder fire truck with a crew cab, equipment lockers and a rear turntable. The turntable turns about y (turntable), the ladder lifts about x (ladder) and its fly section slides out along it (ladder_fly); wheels roll with distance. Headlights, tail lights and the roof beacons glow at night. No crests, numbers or text.

Size
3.2 × 3.9 × 10.7 m
Triangles
2,476
Open in the lab Loop clip inside. The download carries the knobs you set here.

Tune it

5 knobs: Paint, Ladder raise, Ladder extend, Turntable, Beacons.

Specs

Size
3.2 × 3.9 × 10.7 m
width × height × depth
Triangles
2,476
of 6,000
Draw calls
1
one vertex-colour material
Loop clip
3.267 m
of travel per cycle
Moving parts
9
wheel_0 · spin, wheel_1 · spin, wheel_2 · spin, wheel_3 · spin, wheel_4 · spin, wheel_5 · spin, turntable · spin, ladder · rotate, ladder_fly · slide
Knobs
5
3 presets
Night lights
4
headlight, taillight, beacon, locker_light

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.

JavaScript
import { createAsset } from 'https://gaitkit.com/cdn/fire-truck.mjs';

const fireTruck = createAsset();
scene.add(fireTruck);                      // rests on y = 0, front faces +Z

let dist = 0;
renderer.setAnimationLoop(() => {
  dist += speed * clock.getDelta();
  fireTruck.position.z = dist;
  fireTruck.userData.tick(dist);            // wheels roll exactly with the distance
  renderer.render(scene, camera);
});

More in the docs; agents can fetch all of this through MCP.

Knobs

KnobTypeValuesDefaultWhat it does
paintchoicered crimson lime yellow whiteredBody colour: red (classic), crimson (dark red), lime (high-visibility yellow-green), yellow (airport or industrial), white (with a red stripe).
raiserange0 to 1, step 0.050Ladder elevation: 0 lies flat over the cab for driving, 1 is raised to 72 degrees.
extendrange0 to 1, step 0.050How far the fly section slides out: 0 nested, 1 fully out (about 15 m of ladder).
turnrange-180 to 180, step 50Turntable angle in degrees; 0 points the ladder forward over the cab, 90 to the left side, 180 straight back.
beaconstoggleon / offtrueLight bar on the cab roof and warning lights on the rear corners.

Presets: on the road {"raise":0,"extend":0} · rescue at height {"raise":0.85,"extend":1,"turn":60} · airport crash tender {"paint":"lime","raise":0.4,"extend":0.3}

Files

FileWhat
fire-truck.glbGLB, default look · 377 KB
fire-truck.mjsES module, every knob live
fire-truck.objOBJ, static, no colour
fire-truck-params.jsonknob 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.