FREEcommercial use · no sign-up

Waves

A low-poly strip of open sea for the Cruise Ship Deck kit: a pool-blue rolling breaker with a white foam lip and spray, two whitecapped swells behind it, and a pad of broken foam ahead of it. The waves bob and roll in a seamless 4-second loop while the sea slab stays still.

Waves 3D model
This model carries a baked animation clip.

Left rail: colours and the 3 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,708
Vertices
5,124
Meshes · materials
10 · 10
Size (W × H × D)
6.0 m × 1.6 m × 5.3 m
File
GLB · 148 KB
Animation
scene-motion · 4.0s

Palette · named materials

  • pool blue: sea slab, breaker and swells (water)#2e67b8
  • mid grey: depth band under the sea slab (base)#7d828c
  • white light: breaker foam lip, spray and swell whitecaps (accent)#f9f8f6
  • white: foam pad and trailing foam streaks (accent)#f4f1ec

Use it

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

const gltf = await new GLTFLoader().loadAsync(
  "https://assets.stoicsoft.com/1designtool/3d/models/cruise-ship-deck-waves/d47c4821de/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:

Waves for the Cruise Ship Deck 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 Cruise Ship Deck kit (Low-poly style, flat-lowpoly direction): A floating holiday. Use ONLY the kit palette, by name: white #f4f1ec, teak #815731, pool blue #2e67b8, sunset coral #e2715a, white dark #d7cebc, teak dark #4a311c, white light #f9f8f6, teak light #b37c4d, 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 `shipLength` (0–1, default 0.5) for the kit's "Ship length" 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
Make your own with 1DesignTool →

Named parts · 7

  • Waves
  • Sea slab
  • Breaker (hinge on the surface line)
  • Lip spray (hinge on the lip)
  • Swell 1 (hinge on the surface line)
  • Swell 2 (hinge on the surface line)
  • Foam pad (slides on the surface)

Note: Size: a 6.0 m wide × 5.3 m deep strip of open sea, 1.57 m tall at the breaker's crest and spray. The water surface is 0.3 m above the base, over a 0.1 m mid-grey depth band, and the default breaker is about 1.2 m, a moderate sea swell as seen from a ship's rail. The origin is at the bottom centre, front faces +Z. Rig: the sea slab is the still base. Each wave is a group hinged on its base line at the water surface: it bobs ±6–7 cm and pitches ±0.035–0.045 rad about X, phased front to back so the set rolls in. 'spray' is a child of the breaker hinged on the lip line and whips ±0.14 rad. 'foam' slides ±12 cm along Z on the surface. Every motion is one sine of the 4 s 'scene-motion' clip, so the loop is seamless. The GLB node pose was exported at t = 2 s. The GLB has 1,708 triangles in 10 meshes (one per palette colour per part), and every material is named exactly after a kit palette colour (4 of the 12 used). shipLength (the kit's 'Ship length') sets the width of the wave train from 4.5 m to 7.5 m, as a longer hull rides a longer stretch of sea. Params are baked at their defaults and only change geometry when the scene is rebuilt in the viewer; the defaults and the all-max set (shipLength 1, waveHeight 1.6, swells 3) both passed three-check with 0 glb-lint errors. glb-lint: 0 errors; its 4 warnings are heuristics that are expected here (non-indexed geometry for hard flat normals, same-colour materials repeated per part, nested part boxes, and spray, swells and foam that sit on the slab rather than reaching y = 0). plan-check passes except for its part-id regex, which rejects the hyphens in the slug ids this library requires; the same plan with the slug de-hyphenated passes. Fix rounds: (1) widened the foam pad and added foam streaks, (2) moved the breaker back so the streaks stay on the slab and added whitecap streaks on the swells for the back view, (3) tried a tighter hero framing, which cropped the front corner, so it was reverted.

About the Waves 3D model

Waves is a free animated low-poly 3D model from the Cruise Ship Deck set. It measures 6.0 m × 1.6 m × 5.3 m (W × H × D) at real-world scale and is built from 1,708 triangles across 10 meshes, with 7 named parts and a baked animation (4.0 s). Download the 148 KB GLB and drop it into three.js, React Three Fiber, Godot or Blender — free for commercial use, no attribution required.

Is the Waves 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), 148 KB: 1,708 triangles, 5,124 vertices and 10 materials, modelled in metres at 6.0 m × 1.6 m × 5.3 m.
Is Waves animated?
Yes — the GLB carries a baked animation (4.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 Waves 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 1865.