FREEcommercial use · no sign-up

Vanity unit

A low-poly freestanding bathroom vanity: a dark-wood cabinet on chrome legs with a drawer over two shaker doors, a white countertop with a mint-tiled splashback, a faceted oval vessel basin under a tall chrome mixer, a soap pump and dish, and a striped towel on a side rail.

Vanity unit 3D model

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
1,676
Vertices
5,028
Meshes · materials
28 · 28
Size (W × H × D)
87 cm × 1.2 m × 51 cm
File
GLB · 142 KB
Animation
Static

Palette · named materials

  • dark wood#3d2a1c
  • white#f4f1ec
  • white dark#d7cebc
  • chrome#cad1d8
  • mint#90d5b3
  • mint dark#59c08c
  • warm white#f2ede2
  • 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/bathroom-and-laundry-vanity-unit/da5de811b1/model.glb"
);
scene.add(gltf.scene); // metres, +Y up, front faces +Z

How it was made

The brief given to 1DesignTool's “3D object” template:

Vanity unit 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 scenes
  • three-check PASS · glb-lint PASS
Make your own with 1DesignTool →

Named parts · 13

  • Vanity unit
  • Chrome legs
  • Cabinet carcass
  • Drawer
  • Left door
  • Right door
  • Countertop
  • Tiled splashback
  • Vessel basin
  • Basin mixer
  • Soap dispenser and dish
  • Towel rail
  • Hand towel

Note: Size: 0.87 m wide (0.80 m countertop plus the side towel rail) × 0.51 m deep (0.48 m countertop plus the door pulls) × 1.17 m tall. The countertop is at 0.85 m and the basin rim at about 0.99 m. The origin is at the bottom centre on y = 0, and the doors face +Z. The towel rail makes the unit asymmetric, so the footprint is re-centred on x = 0. The GLB has 1,676 triangles in 28 meshes (merged per part and palette colour) and no animation clip. Every material is named exactly after its kit palette colour; 8 of the 12 kit colours appear at the default settings. Params are baked at export, so the GLB is the default build with the doors closed; the doors are merged geometry, not hinged nodes, so they can't be swung in an engine. tileColour sets the splashback tiles in 5 steps: 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. At the mint dark step, the soap pump blends into the tiles. width resizes the cabinet, countertop, basin and tile grid. legHeight raises the whole unit. doorOpen swings both doors outward to 90° and shows a shelf with folded towels inside. No mirror: that belongs on a wall, not in this piece. 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, nested parts overlapping, and the towel rail flagged as detached because its brackets are fixed into the carcass, which is a different part group.

About the Vanity unit 3D model

Vanity unit is a free low-poly 3D model from the Bathroom and Laundry set. It measures 87 cm × 1.2 m × 51 cm (W × H × D) at real-world scale and is built from 1,676 triangles across 28 meshes, with 13 named parts. Download the 142 KB GLB and drop it into three.js, React Three Fiber, Godot or Blender — free for commercial use, no attribution required.

Is the Vanity unit 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), 142 KB: 1,676 triangles, 5,028 vertices and 28 materials, modelled in metres at 87 cm × 1.2 m × 51 cm.
Can I animate Vanity unit?
It ships as a static mesh. Its 13 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 Vanity unit 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 #14 of 1442.