Container stacks
A low-poly yard block of ISO shipping containers for the Shipping Port kit: three rows of 40 ft and paired 20 ft boxes stacked up to three high on yellow twistlocks, with corrugated walls, corner castings and cargo doors with locking bars.

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
- 5,160
- Vertices
- 15,480
- Meshes · materials
- 49 · 49
- Size (W × H × D)
- 12 m × 7.8 m × 8.1 m
- File
- GLB · 404 KB
- Animation
- Static
- Style
- Low-poly
- Collection
- Shipping Port
Palette · named materials
- container colours — box walls and ribs (body)#988e81
- container colours dark — frames of beige and yellow boxes (trim)#70685c
- container colours light — box walls, unlocked by the knob (body)#b6b3af
- steel grey — box walls (body)#757e8a
- steel grey dark — corner castings and grey/blue box frames (trim)#525860
- steel grey light — box walls, unlocked by the knob (body)#a3a5a8
- sea blue — box walls and livery panels on pale boxes (body)#2e67b8
- yellow — twistlocks and box walls (accent)#eecd2b
- soot black — door seams (dark)#1b1b22
- warm white — livery panels (accent)#f2ede2
- mid grey — door locking bars (trim)#7d828c
Use it
import { GLTFLoader } from "three/addons/loaders/GLTFLoader.js";
const gltf = await new GLTFLoader().loadAsync(
"https://assets.stoicsoft.com/1designtool/3d/models/shipping-port-container-stacks/5b0f67bc97/model.glb"
);
scene.add(gltf.scene); // metres, +Y up, front faces +ZHow it was made
The brief given to 1DesignTool's “3D object” template:
Container stacks for the Shipping Port 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. This is one part of the Shipping Port kit (Low-poly style, flat-lowpoly direction): Containers, cranes and salt air. Use ONLY the kit palette, by name: container colours #988e81, steel grey #757e8a, sea blue #2e67b8, yellow #eecd2b, container colours dark #70685c, steel grey dark #525860, container colours light #b6b3af, steel grey light #a3a5a8, 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 `containerColoursAndLogos` (0–1, default 0.5) for the kit's "Container colours and logos" 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 scenes
- three-check PASS · glb-lint PASS
Named parts · 5
- Container stacks
- Row 1 (front)
- Row 2 (middle)
- Row 3 (back)
- Twistlocks
Note: Size: 12.21 m long (X) × 8.11 m deep (Z) × 7.83 m tall. The boxes are ISO 668 standard height: 40 ft is 12.19 × 2.44 × 2.59 m, and the two 20 ft boxes are 6.06 m each with a 76 mm gap. The rows are 0.4 m apart, and each tier is lifted 30 mm by the twistlocks. The back row is three 40 ft boxes high, the middle row is paired 20 ft boxes with only one box on its top tier, and the front row is two high. The origin is at the bottom centre, the bottom castings rest on y = 0, the long sides face ±Z and the cargo doors face +X. The GLB has 5,160 triangles in 49 meshes, is static and has no animation clip. three-check's 5,450 figure includes the viewer's staging ground, which is not exported. Every material is named exactly after a kit palette colour; the default build uses 9 of the 12 (dark wood is never used). The exporter writes one material per mesh, so a colour name appears on several materials: recolour by name. containerColoursAndLogos (the kit's 'Container colours and logos') sets how many box colours are mixed: 1 at 0 (all container colours), 4 at the default, 7 at 1. It also sets how often a box gets a plain painted livery panel on its long sides. These panels are flat colour blocks with no text or marks, because the library forbids logos. Colours are chosen with a fixed seeded random, so the same settings always build the same stack, and a box never matches the one below it or the one placed before it. rows (1–4), tiers (1–4) and rowGap rebuild the block. The largest setting (4 rows × 4 tiers) is about 9.8k triangles and stays valid. Params are baked into the GLB at their defaults; only the defaults and the maximum setting were rendered and checked. glb-lint: 0 errors and 6 expected warnings: the material count and duplicate names (from the per-mesh export), non-indexed geometry (deliberate flat facets), nested boxes (frames and ribs on each shell), the twistlocks flagged as detached (they sit between castings above the ground), and scale against a 1 m reference (this is a 7.8 m yard stack). 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 and the GLB reload keep all 5 ids. Fix rounds: (1) exposure 0.7 and a no-repeat colour order, because the first stack was washed out and two pale boxes merged; (2) a looser hero frame; (3) removed the door handles and spaced the ribs more coarsely, so the largest param setting fits the 10k budget.
About the Container stacks 3D model
Container stacks is a free low-poly 3D model from the Shipping Port set. It measures 12 m × 7.8 m × 8.1 m (W × H × D) at real-world scale and is built from 5,160 triangles across 49 meshes, with 5 named parts. Download the 404 KB GLB and drop it into three.js, React Three Fiber, Godot or Blender — free for commercial use, no attribution required.
- Is the Container stacks 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), 404 KB: 5,160 triangles, 15,480 vertices and 49 materials, modelled in metres at 12 m × 7.8 m × 8.1 m.
- Can I animate Container stacks?
- It ships as a static mesh. Its 5 named parts are separate nodes, so you can move or animate each one in your engine.
- 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 Container stacks 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 Shipping Port →
Moving crane
Shipping Port2,592 tris

Reach stacker
Shipping Port2,044 tris

Tug
Shipping Port3,874 tris

Container ship
Shipping Port4,372 tris

Forklifts' pallets
Shipping Port1,564 tris

Signal lights
Shipping Port1,640 tris

Nets
Shipping Port3,656 tris

Drums
Shipping Port1,848 tris
Free under the 1DesignTool 3D library license. Model #34 of 1579.