FREEcommercial use · no sign-up

Sailboat

A low-poly island day-sailer sloop with a coral bottom, turquoise stripes, a white cabin trunk and a sunken cockpit with a tiller. Its coral-banded mainsail and jib ease in and out on a seamless 6 s breeze loop.

Sailboat 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
1,980
Vertices
4,426
Meshes · materials
23 · 23
Size (W × H × D)
2.7 m × 9.3 m × 6.6 m
File
GLB · 198 KB
Animation
scene-motion · 6.0s
Collection
Tropical Island

Palette · named materials

  • coral — antifouled bottom, lower transom, mainsail band, burgee#e2715a
  • turquoise — boot stripe and sheer stripe#31c4b8
  • warm white — topsides, upper transom, cabin trunk, mainsail, jib#f2ede2
  • sand — deck#d1bd94
  • sand light — cockpit walls, cabin roof#e6ddcb
  • sand dark — cockpit sole, fore hatch#ba9c5e
  • dark wood — toe rails, benches, coamings, rudder, tiller#3d2a1c
  • mid grey — mast, spreaders, boom, chainplates, pintles, burgee spindle#7d828c
  • soot black — keel, standing rigging, cabin ports, companionway#1b1b22

Use it

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

const gltf = await new GLTFLoader().loadAsync(
  "https://assets.stoicsoft.com/1designtool/3d/models/tropical-island-sailboat/f13636afe6/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:

Sailboat for the Tropical 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 Tropical Island kit (Low-poly style, flat-lowpoly direction): Palm beach and blue lagoon. Use ONLY the kit palette, by name: sand #d1bd94, turquoise #31c4b8, palm green #3a883a, coral #e2715a, sand dark #ba9c5e, turquoise dark #22877e, sand light #e6ddcb, turquoise light #6dd5cc, 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 `islandSize` (0–1, default 0.5) for the kit's "Island size" 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 vehicles
  • three-check PASS · glb-lint PASS
Make your own with 1DesignTool →

Named parts · 12

  • Sailboat
  • Hull
  • Keel
  • Deck and cockpit
  • Cabin trunk
  • Mast and spreaders
  • Standing rigging
  • Boom
  • Mainsail
  • Jib
  • Rudder and tiller
  • Masthead burgee

Note: Size: the hull is 6.2 m long from transom to stem head and 2.3 m in beam. The sheer is 1.67 m above the keel bottom amidships, the cabin roof 2.24 m, and the burgee tip 9.34 m (mast 7.2 m above deck). The fin keel draws 0.72 m below the hull, and the rudder hangs 0.38 m aft of the transom. Origin: x is centred, y = 0 is the bottom of the keel, and z is centred on the hull length. The bow faces +Z. The boat stands on its keel, so set it on your own water surface (a waterline about 1.0 m up suits it); no water is included. The GLB has 1,980 triangles in 23 meshes, merged per part and colour. It holds one baked 6 s clip, 'scene-motion', and the hull, keel, deck, cabin, mast and rigging never move in it. The boom (carrying the mainsail as a child) swivels about the mast axis at the gooseneck. The jib swivels about its forestay; its node is rotated so local +Y runs up the stay. The rudder and tiller swing about the vertical pintle axis just aft of the transom. The burgee weathervanes on a vertical spindle at the masthead. All angles are whole-cycle sines, so the loop closes exactly, and the sails stay to the +X (leeward) side throughout, clear of the backstay and shrouds. The exporter writes the static node pose at the t = 2 s frame, so un-animated imports show the sails slightly eased from frame 0. Every material is named exactly after a kit palette colour. The exporter writes one material per mesh, so a colour name repeats across materials: recolour by name. Params are baked into the GLB at their defaults and only change geometry when the scene is rebuilt in the viewer. islandSize (the kit's 'Island size') scales the whole boat except the mast height, from a 5.2 m sloop at 0 to a 7.2 m sloop at 1. mastHeight sets the rig height. trim sets how far the boom and jib are eased out, and swing sets the breeze amplitude of the baked loop (0 holds the sails still). Only the default params were captured by three-check; the param extremes were reasoned through in code but not rendered. Fix rounds: (1) the sails swung away from the hero camera and read edge-on, the coral bottom hid under the hull, and a pale deck merged with the white hull, so the sails now ease toward +X, the coral runs up to the boot stripe, the deck is sand and the rudder is slimmer. (2) The back view was loosened so the keel foot clears the toolbar. glb-lint: 0 errors and 5 heuristic warnings. Two cover the material count and duplicate materials, both caused by the per-mesh materials. One flags overlaps where the hull bands, toe rails, keel root and cabin are deliberately nested. One flags the mast, boom and jib as 'detached', but they sit on the cabin roof and in the rig, which are separate parts. One flags the 9.3 m height against a 1 m reference, which is the real scale of a sailboat. The verdict reads UNVERIFIED only because no host requirements contract was supplied. plan-check passes except for its part-id regex, which rejects the hyphens in the slug-based ids this library requires (a de-hyphenated copy passes). three-check accepts those ids, and all 12 survive the GLB reload.

About the Sailboat 3D model

Sailboat is a free animated low-poly 3D model from the Tropical Island set. It measures 2.7 m × 9.3 m × 6.6 m (W × H × D) at real-world scale and is built from 1,980 triangles across 23 meshes, with 12 named parts and a baked animation (6.0 s). Download the 198 KB GLB and drop it into three.js, React Three Fiber, Godot or Blender — free for commercial use, no attribution required.

Is the Sailboat 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), 198 KB: 1,980 triangles, 4,426 vertices and 23 materials, modelled in metres at 2.7 m × 9.3 m × 6.6 m.
Is Sailboat animated?
Yes — the GLB carries a baked animation (6.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 Sailboat 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 #27 of 996.