FREEcommercial use · no sign-up

Rotating ring

A low-poly shipyard assembly ring, 20 m across, standing on edge in a deep-blue roller cradle. The white-faced ring with its orange roller track turns one full revolution per loop on three black drive rollers, with inward tool pods and a band of progress lights. Part of the Orbital Shipyard kit.

Rotating ring 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
2,484
Vertices
7,452
Meshes · materials
27 · 27
Size (W × H × D)
21 m × 23 m × 7.9 m
File
GLB · 300 KB
Animation
scene-motion · 8.0s

Palette · named materials

  • face#f4f1ec
  • track#ed7e1d
  • frame#1b447e
  • deck#7d828c
  • mount#d7cebc
  • metal#b9bfc6
  • rubber#1b1b22
  • light#eea668

Use it

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

const gltf = await new GLTFLoader().loadAsync(
  "https://assets.stoicsoft.com/1designtool/3d/models/orbital-shipyard-rotating-ring/895824a959/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:

Rotating ring for the Orbital Shipyard 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 Orbital Shipyard kit (Low-poly style, flat-lowpoly direction): Ships under construction in open space. Use ONLY the kit palette, by name: white #f4f1ec, orange #ed7e1d, deep space blue #1b447e, silver #b9bfc6, white dark #d7cebc, orange dark #af590e, white light #f9f8f6, orange light #eea668, 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 `shipCompletionStage` (0–1, default 0.5) for the kit's "Ship completion stage" setting wherever it makes sense on this part, and keep that id.
  • Agent: Claude Code · Claude Opus 5.5 in 1DesignTool
  • Generation: 4.27M tokens (95% cached) · ≈ $2.94 at API prices · 5-hour plan +7%
  • Direction: Low-poly · family abstract-kinetic
  • three-check PASS · glb-lint PASS — 0 blocking errors, 5 heuristic warnings (tool verdict UNVERIFIED: no requirements contract supplied)
Make your own with 1DesignTool →

Named parts · 16

  • Rotating ring
  • Base
  • Deck
  • Left cradle
  • Right cradle
  • Drive cradle
  • Drive motor
  • Left roller
  • Right roller
  • Drive roller
  • Ring (pivot)
  • Ring band
  • Front flange
  • Back flange
  • Progress lights
  • Tool pods

Note: Real-world size: ring 20.5 m outer diameter (flanges), 7.9 m deep including the deck, 23.25 m tall overall; ring centre axle at 12.6 m. Origin is the bottom centre of the deck at y = 0; front faces +Z, ring axle runs along Z. The baked 8 s clip 'scene-motion' is one full clockwise turn of the ring about its centre axle, while the three rollers counter-rotate exactly 12 turns about their own axles, so the loop is seamless. The deck, pillars, bearings and drive motor never move. The GLB's static pose is the t = 2 s frame (ring a quarter turn round). shipCompletionStage lights that fraction of the 24 progress tiles on each ring face; it, ringDiameter, ringDepth and toolPods are build-time params, and the GLB carries the defaults. Part ids use the hyphen-free root 'orbitalshipyardrotatingring' because the kit's part-id rule rejects hyphens. Materials are named by palette colour (8 distinct colours), but the exporter writes one material copy per mesh (27 entries) — recolour by name. Geometry is non-indexed with per-face normals so the faceted look survives in any engine. glb-lint: 0 errors; its warnings are heuristics (duplicate same-name materials, non-indexed flat geometry, deliberate embedded joins, 23 m height vs a 1 m reference).

Free under the 1DesignTool 3D library license. Model #7 of 589.