Mirrors
A low-poly bathroom mirror set: an arched wall mirror in a faceted mint frame on a white vanity shelf, a round shaving mirror on an extending chrome arm, and a tumbler with toothbrushes and a soap pump.

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
- 936
- Vertices
- 2,808
- Meshes · materials
- 17 · 17
- Size (W × H × D)
- 1.1 m × 89 cm × 13 cm
- File
- GLB · 80 KB
- Animation
- Static
- Style
- Low-poly
- Collection
- Bathroom and Laundry
Palette · named materials
- mint#90d5b3
- mint dark#59c08c
- mint light#c9e8d9
- white#f4f1ec
- white dark#d7cebc
- white light#f9f8f6
- chrome#cad1d8
- mid grey#7d828c
Use it
import { GLTFLoader } from "three/addons/loaders/GLTFLoader.js";
const gltf = await new GLTFLoader().loadAsync(
"https://assets.stoicsoft.com/1designtool/3d/models/bathroom-and-laundry-mirrors/a72fd14cc9/model.glb"
);
scene.add(gltf.scene); // metres, +Y up, front faces +ZHow it was made
The brief given to 1DesignTool's “3D object” template:
Mirrors for the Bathroom and Laundry 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 Bathroom and Laundry kit (Low-poly style, flat-lowpoly direction): Tiles, steam and soap. Use ONLY the kit palette, by name: mint #90d5b3, white #f4f1ec, chrome #cad1d8, soft grey #999999, mint dark #59c08c, white dark #d7cebc, mint light #c9e8d9, 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 `tileColour` (0–1, default 0.5) for the kit's "Tile colour" 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 products
- three-check PASS · glb-lint PASS
Named parts · 5
- Mirrors
- Vanity shelf
- Arched wall mirror
- Shaving mirror
- Tumbler and soap pump
Note: Size: 1.06 m wide × 0.13 m deep × 0.892 m tall at the defaults. The arched mirror is 0.60 × 0.80 m with a 5 cm frame, and it stands on a 0.68 × 0.13 m shelf whose chrome bracket feet touch y = 0. The shaving mirror is 0.20 m across. The origin is at the bottom centre of the footprint on y = 0 and the glass faces +Z. The back (wall) plane is z = −0.065, so to hang it, move the model +0.065 m in z against the wall. The GLB has 936 triangles in 17 meshes (merged per part and palette colour) and no animation clip. Every material is named exactly after its kit palette colour, and 8 of the 12 kit colours appear at the default settings. The mirror glass is flat 'mid grey' with modelled 'white light' reflection streaks. There are no real reflections or environment maps. Params are baked at export, so the GLB is the default build. tileColour sets both frames in 5 steps, the same ramp the kit's tiles use: white light below 0.2, warm white up to 0.4, mint (the default) up to 0.6, mint dark up to 0.8, and soft grey from 0.8. The inner lip takes the darker partner of that colour. width and height size the arched mirror, and the shelf follows. armReach telescopes the shaving arm from 7 to 27 cm. plan-check's part-id regex rejects the hyphenated slug ids the library requires, so the plan was checked on a de-hyphenated copy, which passed. three-check accepts the hyphenated ids. glb-lint reports 0 errors. Its warnings are expected for this pipeline: per-part material instances, non-indexed flat-shaded geometry, and nested frame/lip/glass parts overlapping.
About the Mirrors 3D model
Mirrors is a free low-poly 3D model from the Bathroom and Laundry set. It measures 1.1 m × 89 cm × 13 cm (W × H × D) at real-world scale and is built from 936 triangles across 17 meshes, with 5 named parts. Download the 80 KB GLB and drop it into three.js, React Three Fiber, Godot or Blender — free for commercial use, no attribution required.
- Is the Mirrors 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), 80 KB: 936 triangles, 2,808 vertices and 17 materials, modelled in metres at 1.1 m × 89 cm × 13 cm.
- Can I animate Mirrors?
- 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 Mirrors 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 Bathroom and Laundry →
Shower door
Bathroom and Laundry1,320 tris

Running taps
Bathroom and Laundry2,568 tris

Steam
Bathroom and Laundry7,564 tris

Washing machine drum
Bathroom and Laundry5,180 tris

Plants
Bathroom and Laundry2,812 tris

Rubber duck
Bathroom and Laundry800 tris

Scales
Bathroom and Laundry1,392 tris

Baskets
Bathroom and Laundry4,332 tris
Free under the 1DesignTool 3D library license. Model #11 of 1442.