FREEcommercial use · no sign-up

Waving flags

A low-poly trackside marshal flag stand: three poles rock in hinged swivel yokes on a kerb-striped concrete plinth while their flags ripple, with the black-and-white chequered flag waving highest in the centre. Seamless 4-second baked loop.

Waving flags 3D model
This model carries a baked animation clip.

Left rail: colours and the 4 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,076
Vertices
6,228
Meshes · materials
38 · 38
Size (W × H × D)
3.8 m × 4.1 m × 1.1 m
File
GLB · 235 KB
Animation
scene-motion · 4.0s
Collection
Racing Circuit

Palette · named materials

  • plinth walls (mid grey)#7d828c
  • plinth footing, axle pins (tarmac dark)#101113
  • plinth cap, yokes, collars, hoist rings (tarmac)#34373d
  • pole shafts (tarmac light)#5c5d61
  • coping stripes, plain flags (kerb red and white)#f4f1ec
  • coping stripes (kerb red and white dark)#d7cebc
  • pole finials (kerb red and white light)#f9f8f6
  • team livery flags (flag colours)#988e81
  • livery band, chequer light squares (warm white)#f2ede2
  • chequer dark squares, plain-flag hoist band, pole hubs (soot black)#1b1b22

Use it

import { GLTFLoader } from "three/addons/loaders/GLTFLoader.js";

const gltf = await new GLTFLoader().loadAsync(
  "https://assets.stoicsoft.com/1designtool/3d/models/racing-circuit-waving-flags/51543dd136/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:

Waving flags for the Racing Circuit 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 Racing Circuit kit (Low-poly style, flat-lowpoly direction): Speed, pit stops and crowds. Use ONLY the kit palette, by name: tarmac #34373d, kerb red and white #f4f1ec, flag colours #988e81, grass #539b3b, tarmac dark #101113, kerb red and white dark #d7cebc, tarmac light #5c5d61, kerb red and white light #f9f8f6, 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 `teamLiveries` (0–1, default 0.5) for the kit's "Team liveries" 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 abstract-kinetic
  • three-check PASS · glb-lint PASS
Make your own with 1DesignTool →

Named parts · 8

  • Waving flags
  • Plinth and yokes
  • Left pole
  • Centre pole
  • Right pole
  • Left flag
  • Chequered flag
  • Right flag

Note: Size at default params: about 4.0 m wide (X) × 4.07 m tall (Y, to the centre finial) × 1.1 m deep (Z); the plinth is 2.7 × 0.53 × 1.0 m and the flags are 1.2 × 0.72 m. Origin at the bottom centre, resting on y = 0; front faces +Z. The 4 s clip 'scene-motion' rocks each pole about its yoke axle pin (Z axis, 0.74 m up) twice per loop and yaws each of the four flag strips about its leading-edge hinge on a travelling wave four times per loop; the plinth (base) never moves. The ripple is rigid hinged strips (no morphs or skinning), so it plays in any engine; thin seam rods on the hinge axes hide the folds. The GLB is the default build: 2,076 triangles, 38 meshes (one per part and palette colour); every material is named after its kit palette colour so the kit recolours by name (names repeat across parts because the exporter writes one material per mesh). Team liveries (the kit knob) sets how many side flags fly flag colours with a warm-white band instead of plain kerb white with a black hoist (0, 1 or 2, left first); the chequered flag never changes. Pole height, flag size and wave amount rebuild the model in the viewer only. glb-lint: 0 errors and 6 expected heuristic warnings (material count and duplicate names from one-material-per-mesh export, non-indexed flat-shaded geometry, nested yoke/plinth boxes, the plain flag reported 'detached' because it hangs from rings in the pole part, height above the direction's 1 m reference). The kit's plan-check rejects the hyphenated library part ids; a de-hyphenated copy of design-plan.md passes.

About the Waving flags 3D model

Waving flags is a free animated low-poly 3D model from the Racing Circuit set. It measures 3.8 m × 4.1 m × 1.1 m (W × H × D) at real-world scale and is built from 2,076 triangles across 38 meshes, with 8 named parts and a baked animation (4.0 s). Download the 235 KB GLB and drop it into three.js, React Three Fiber, Godot or Blender — free for commercial use, no attribution required.

Is the Waving flags 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), 235 KB: 2,076 triangles, 6,228 vertices and 38 materials, modelled in metres at 3.8 m × 4.1 m × 1.1 m.
Is Waving flags animated?
Yes — the GLB carries a baked animation (4.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 Waving flags 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.

Free under the 1DesignTool 3D library license. Model #31 of 1815.