Smoke plume
A low-poly volcanic smoke plume: a faceted column of billows rising about 126 m from a glowing basalt vent collar and bending downwind into a broad white ash canopy. It carries a seamless 10 s swirl loop.

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
- 3,492
- Vertices
- 10,476
- Meshes · materials
- 28 · 28
- Size (W × H × D)
- 111 m × 126 m × 93 m
- File
- GLB · 348 KB
- Animation
- scene-motion · 10.0s
- Style
- Low-poly
- Collection
- Volcano Island
Palette · named materials
- warm white — sunlit tops of the upper billows and canopy (base)#f2ede2
- mid grey — upper billow sides, canopy undersides (base)#7d828c
- ash grey — lower billows, vent lip (body)#757e8a
- basalt black light — root billow undersides, upper collar band, basalt blocks (body)#3a3c40
- basalt black — collar foot band (earth)#151619
- basalt black dark — collar underside (trim)#090a0b
- soot black — throat wall, darkest smoke undersides (trim)#1b1b22
- lava orange — throat floor (accent)#ed7e1d
- lava orange dark — lava-lit underside of the root billow (accent)#af590e
Use it
import { GLTFLoader } from "three/addons/loaders/GLTFLoader.js";
const gltf = await new GLTFLoader().loadAsync(
"https://assets.stoicsoft.com/1designtool/3d/models/volcano-island-smoke-plume/ddf99b98e4/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:
Smoke plume for the Volcano Island 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 Volcano Island kit (Low-poly style, flat-lowpoly direction): A smoking peak over black sand. Use ONLY the kit palette, by name: basalt black #151619, lava orange #ed7e1d, ash grey #757e8a, jungle green #3a883a, basalt black dark #090a0b, lava orange dark #af590e, basalt black light #3a3c40, lava orange light #eea668, 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 `eruptionStage` (0–1, default 0.5) for the kit's "Eruption stage" 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
Named parts · 9
- Smoke plume
- Vent collar
- Billow 1 (root)
- Billow 2
- Billow 3
- Billow 4
- Billow 5
- Billow 6
- Ash canopy
Note: Size: 126.4 m tall from the bottom of the vent collar to the top of the canopy. The collar is about 42 m across and 8 m high, and the canopy spreads about 70 m. The plume bends downwind toward −X. The bottom rests on y = 0, the origin is at the bottom centre of the collar and the front faces +Z. Motion: a seamless 10 s clip, 'scene-motion'. Each billow tier swivels one whole turn per loop about its own vertical axis, in alternating directions. Its pivot node sits exactly on that axis at the tier's centre. The tiers also sway on a travelling wave that lags up the column. The canopy drifts and yaws a few degrees about its centre. The vent collar never moves, and neither does the root billow's position, which only swivels. The static node pose in the GLB is the t = 2 s frame, so the billows sit slightly off their rest positions until the clip plays. eruptionStage (the kit's 'Eruption stage') drives the activity. At 0 there is a thin pale steam column over a cold crust floor. Toward 1 the column is taller and fatter, the root goes dark (down to soot black), its underside is lit lava orange dark, and the throat core turns lava orange light. tierCount (4–10) sets the number of billow tiers, the top one always being the canopy, so the part ids billow_N change with it. windLean (0–1) bends the column downwind. swirlTurns (1–2) sets the turns per loop. The params are baked into the GLB at their defaults and only change the geometry when the scene is rebuilt in the viewer. Only the defaults were rendered and checked. The GLB has 3,492 triangles in 28 meshes. Every material is named exactly after a kit palette colour. 9 of the 12 kit colours are used: jungle green, dark wood and lava orange light are not used at the default stage. The lava materials carry a mild emissive of their own colour. The exporter writes one material per mesh, so some names repeat: recolour by name. Viewer-only staging: exposure is 0.6, and the staging ground is not in the GLB. glb-lint reports 0 errors and 5 warnings, all expected. The duplicate-material warning comes from the per-part, per-colour meshes. The geometry is non-indexed on purpose, for flat facets. The overlap warnings are the collar's colour bands sharing one bounding box. The height warning only compares against a 1 m reference. The verdict line reads UNVERIFIED only because no requirements contract was supplied. plan-check rejects only the hyphenated library part ids, because its regex allows no hyphen; the same plan with the slug de-hyphenated passes. three-check keeps all part ids.
About the Smoke plume 3D model
Smoke plume is a free animated low-poly 3D model from the Volcano Island set. It measures 111 m × 126 m × 93 m (W × H × D) at real-world scale and is built from 3,492 triangles across 28 meshes, with 9 named parts and a baked animation (10.0 s). Download the 348 KB GLB and drop it into three.js, React Three Fiber, Godot or Blender — free for commercial use, no attribution required.
- Is the Smoke plume 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), 348 KB: 3,492 triangles, 10,476 vertices and 28 materials, modelled in metres at 111 m × 126 m × 93 m.
- Is Smoke plume animated?
- Yes — the GLB carries a baked animation (10.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 Smoke plume 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 Volcano Island →
Falling rocks
Volcano Island1,963 tris

Rescue helicopter
Volcano Island1,472 tris

Flowing lava
Volcano Island4,033 tris

Hot spring pools
Volcano Island3,211 tris

Instruments
Volcano Island1,820 tris

Warning signs
Volcano Island1,035 tris

Ash-dusted trees
Volcano Island1,276 tris

Cave
Volcano Island1,732 tris
Free under the 1DesignTool 3D library license. Model #12 of 1059.