School bus
A low-poly long-nose school bus with a hood and flared fenders, a row of dark windows over black rub rails, and a white roof. It has a folding glass door, a driver-side stop arm and a front crossing arm, and it comes with a seamless 6 s stop-and-go loop.

Left rail: colours and the 3 knobs the agent wrote into this model — they rebuild the geometry and go into your download. Right rail: looks for the viewer. Drag to orbit, scroll to zoom.
- Triangles
- 2,256
- Vertices
- 6,768
- Meshes · materials
- 27 · 27
- Size (W × H × D)
- 3.0 m × 3.0 m × 10 m
- File
- GLB · 213 KB
- Animation
- scene-motion · 6.0s
- Style
- Low-poly
- Collection
- Suburban Street
Palette · named materials
- lawn green — body paint (default houseColours)#3a883a
- white trim — roof cap and hatches, stop sign face, crossing arm#f4f1ec
- soot black — tyres, rub rails, bumpers, door and emergency-door frames, mirror heads, chassis, stop sign rim#1b1b22
- asphalt — window, door and windshield glass#3b3e45
- mid grey — grille, hubs, mirror arms, arm hinges#7d828c
- pastel siding dark — grille bars, wheel lugs#9e9e9e
- warm white — headlights, warning lamps, tail lamps (also body paint at houseColours 0–0.24)#f2ede2
- lawn green light — body paint at houseColours 0.25–0.49#5db15d
- lawn green dark — body paint at houseColours 0.75–1#235223
Use it
import { GLTFLoader } from "three/addons/loaders/GLTFLoader.js";
const gltf = await new GLTFLoader().loadAsync(
"https://assets.stoicsoft.com/1designtool/3d/models/suburban-street-school-bus/998579c28f/model.glb"
);
scene.add(gltf.scene); // metres, +Y up, front faces +Z
const mixer = new THREE.AnimationMixer(gltf.scene);
gltf.animations.forEach((clip) => mixer.clipAction(clip).play());
// in your loop: mixer.update(delta)How it was made
The brief given to 1DesignTool's “3D object” template:
School bus for the Suburban Street kit. Design it as one clear asset at believable real-world scale for that setting (state the size in metres in meta.notes), with its main parts modelled and named, readable at thumbnail size and from every orbit angle. It moves: author a seamless baked loop (2–12 s) with every pivot exactly at its hinge, axle or swivel, and keep the base still. This is one part of the Suburban Street kit (Low-poly style, flat-lowpoly direction): Quiet family homes on a curved road. Use ONLY the kit palette, by name: pastel siding #c4c4c4, lawn green #3a883a, asphalt #3b3e45, white trim #f4f1ec, pastel siding dark #9e9e9e, lawn green dark #235223, pastel siding light #ebebeb, lawn green light #5db15d, soot black #1b1b22, warm white #f2ede2, mid grey #7d828c, dark wood #3d2a1c. Every material's `name` must be exactly the palette colour it uses — the GLB carries these names so the kit recolours as one; an unnamed material fails delivery. Kit knob: expose a param `houseColours` (0–1, default 0.5) for the kit's "House colours" setting wherever it makes sense on this part, and keep that id.
- Agent: Claude Code · Claude Opus 5.5 in 1DesignTool
- Direction: Low-poly · family vehicles
- three-check PASS · glb-lint PASS
Named parts · 14
- School bus
- Body
- Roof
- Windows and door glass
- Rub rails, bumpers and grille
- Lights
- Mirrors
- Chassis
- Stop arm
- Crossing arm
- Front left wheel
- Front right wheel
- Rear left wheels
- Rear right wheels
Note: Size: 10.0 m long bumper to bumper, 2.44 m wide across the body (3.0 m across the mirrors) and 3.02 m tall to the roof hatches. The wheels are 1.0 m across. The origin is at the bottom centre, every tyre rests on y = 0 and the front faces +Z. The GLB has 2,256 triangles in 27 meshes. The Suburban Street palette has no yellow, so this is not a yellow bus. The body is painted with a kit colour, and the bus reads as a school bus from its long-nose shape, its black rub rails, its stop arm and its crossing arm. Every material is named exactly after its palette colour. The exporter writes one material per mesh, so the same colour name appears on several materials: recolour by name. Warm white is mildly emissive so the lamps look lit. The baked clip scene-motion (6 s, seamless) moves only parts on their own pivots. The wheels pull away, roll 2 whole turns and brake to a stop, with the speed following sin⁴ so the bus is parked at the loop seam. While it is parked, the stop arm swings out 90° on its vertical hinge behind the driver window (+X side), and the crossing arm swings forward from the curb-side bumper corner (−X side). Both fold back before the bus moves. The body never moves. The tyres have 12 facets, so while they roll the contact point rises and falls by up to about 17 mm. The export snapshots a mid-loop frame, so the glTF's static node pose is a frame from the clip, not t = 0. Because the wheel nodes are slightly rotated in that frame, glb-lint's box-corner bounds read y −0.010, but no vertex goes below y = 0. Play the clip, or seek it to 0, for the rest pose. Params are baked into the GLB at their defaults and only change the model when the scene is rebuilt in the viewer. houseColours (the kit's 'House colours') picks the body paint from light to deep: warm white, lawn green light, lawn green (the default) or lawn green dark. length (8.5–11.5 m) stretches the passenger box, moves the rear axle, and sets the window count. armSwing scales how far the stop arm and crossing arm open in the loop. The extremes were rendered and passed three-check: an 8.5 m warm-white bus with its arms still, and an 11.5 m lawn-green-dark bus with full swing. glb-lint: 0 errors and 6 heuristic warnings. Two come from the per-mesh materials (material count and duplicates). One flags non-indexed geometry, which is deliberate flat shading. One flags overlaps where the rails, grille bars and mirror heads are deliberately nested on their panels. One flags 'detached' parts: each sits alone in its own group, but they rest on each other. The last flags the 3 m height against the direction's 1 m reference. The verdict reads UNVERIFIED only because no host requirements contract was supplied. plan-check passes except for its part-id regex, which rejects the hyphens in the slug-based ids this library requires. three-check accepts those ids, and all 14 survive the GLB reload.
About the School bus 3D model
School bus is a free animated low-poly 3D model from the Suburban Street set. It measures 3.0 m × 3.0 m × 10 m (W × H × D) at real-world scale and is built from 2,256 triangles across 27 meshes, with 14 named parts and a baked animation (6.0 s). Download the 213 KB GLB and drop it into three.js, React Three Fiber, Godot or Blender — free for commercial use, no attribution required.
- Is the School bus 3D model free for commercial use?
- Yes. It is free under the 1DesignTool 3D library license: use it in personal and commercial work — games, apps, websites, renders, ads and client projects — and modify it as you like, with no credit required. What you can't do is re-sell or re-distribute the file on its own or inside a model pack.
- What file format is it, and how big is it?
- A single binary glTF 2.0 file (.glb), 213 KB: 2,256 triangles, 6,768 vertices and 27 materials, modelled in metres at 3.0 m × 3.0 m × 10 m.
- Is School bus animated?
- Yes — the GLB carries a baked animation (6.0 s), ready to play with any glTF animation mixer.
- Which engines and tools can open it?
- Anything that reads glTF 2.0. three.js, React Three Fiber, Babylon.js, Godot 4 and Blender import the GLB directly; Unity and Unreal Engine load it through their glTF importers. The snippets above show the exact code for three.js, React Three Fiber, Godot and Blender.
- How was the School bus 3D model made?
- Claude Code (Claude Opus 5.5) generated it inside 1DesignTool's 3D template from a written brief, then the design kit's checks verified the geometry and the GLB before it was published. You can make your own the same way with 1DesignTool.
More like this
All of Suburban Street →
Bicycle
Suburban Street2,840 tris

Lawn mower
Suburban Street2,208 tris

Family car
Suburban Street1,976 tris

Hedges
Suburban Street2,364 tris

Street lamps
Suburban Street804 tris

Sprinklers
Suburban Street3,636 tris

Garden gnomes
Suburban Street1,012 tris

Basketball hoop
Suburban Street1,992 tris
Free under the 1DesignTool 3D library license. Model #11 of 761.