FREEcommercial use · no sign-up

Ox cart

A low-poly Roman plaustrum for the Roman Forum kit: a box cart on two solid plank wheels with iron tyres, loaded with amphorae in straw, drawn by a yoked pair of white lyre-horned oxen. It has a seamless 8 s loop: the wheels turn while the oxen walk in place, nodding and swishing their tails.

Ox cart 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
5,528
Vertices
16,584
Meshes · materials
69 · 69
Size (W × H × D)
2.0 m × 1.6 m × 4.9 m
File
GLB · 622 KB
Animation
scene-motion · 8.0s
Collection
Roman Forum

Palette · named materials

  • marble white dark: oxen (base)#d7cebc
  • soot black: muzzles, eyes, horn tips, hooves, tail switches, iron tyres (trim)#1b1b22
  • warm white: horns, sack, blanket stripe (accent)#f2ede2
  • dark wood: sills, stakes, axle, pole, yoke and bows, wheel battens and hubs (earth)#3d2a1c
  • terracotta dark: floor planks, side boards, wheel discs, yoke lashing and neck straps (body)#823d26
  • imperial red: top rail and folded blanket (accent)#c32222
  • terracotta: amphorae; worn right rail and bleached boards with wear (body)#be5937
  • terracotta light: broken amphora and shard from intactOrRuined 0.7 (body)#d08971
  • bronze: straw bed, hub caps, pole band and finial, yoke knobs (accent)#916430
  • mid grey: linchpins (trim)#7d828c

Use it

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

const gltf = await new GLTFLoader().loadAsync(
  "https://assets.stoicsoft.com/1designtool/3d/models/roman-forum-ox-cart/36e08820f2/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:

Ox cart for the Roman Forum 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 Roman Forum kit (Low-poly style, flat-lowpoly direction): The civic heart of an imperial city. Use ONLY the kit palette, by name: marble white #f4f1ec, terracotta #be5937, imperial red #c32222, bronze #916430, marble white dark #d7cebc, terracotta dark #823d26, marble white light #f9f8f6, terracotta light #d08971, 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 `intactOrRuined` (0–1, default 0.5) for the kit's "Intact or ruined" 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 · 39

  • Ox cart
  • Bed and straw
  • Side boards
  • Amphorae load
  • Axle
  • Draught pole
  • Yoke
  • Left wheel
  • Right wheel
  • Left ox body
  • Left ox head
  • Left ox tail
  • Left ox, hind left leg, upper
  • Left ox, hind left leg, lower
  • Left ox, hind left leg, hoof
  • Left ox, front left leg, upper
  • Left ox, front left leg, lower
  • Left ox, front left leg, hoof
  • Left ox, hind right leg, upper
  • Left ox, hind right leg, lower
  • Left ox, hind right leg, hoof
  • Left ox, front right leg, upper
  • Left ox, front right leg, lower
  • Left ox, front right leg, hoof
  • Right ox body
  • Right ox head
  • Right ox tail
  • Right ox, hind left leg, upper
  • Right ox, hind left leg, lower
  • Right ox, hind left leg, hoof
  • Right ox, front left leg, upper
  • Right ox, front left leg, lower
  • Right ox, front left leg, hoof
  • Right ox, hind right leg, upper
  • Right ox, hind right leg, lower
  • Right ox, hind right leg, hoof
  • Right ox, front right leg, upper
  • Right ox, front right leg, lower
  • Right ox, front right leg, hoof

Note: Size: about 4.9 m long (tailboard to the oxen's muzzles) × 2.0 m wide over the axle ends × 1.6 m tall to the horn tips; the oxen stand 1.47 m at the hump, the solid wheels are 1.1 m across and the bed floor sits at 0.77 m. Origin is at the bottom centre, the model rests on y = 0 on both tyres and the planted hooves, and the oxen face +Z; 'left' parts are on the vehicle's own left (+X). The GLB has 5,528 triangles in 69 meshes; three-check's 5,818 figure includes the viewer's staging ground, which is not exported. Every material is named exactly after a kit palette colour; 9 of the 12 are used at the default (terracotta light appears only from intactOrRuined 0.7; marble white and marble white light are unused). The exporter writes one material per mesh, so a colour name appears on several materials: recolour by name. The baked clip scene-motion (8 s, seamless) turns both wheels one full forward revolution about the axle while the oxen walk in place: five strides per loop, every leg a rigid hip → knee/hock → fetlock chain whose pivots sit on the joints, posed by two-bone IK so planted hooves slide straight back along y = 0 at the wheels' rolling speed; the heads nod at the poll and the tails swish at the tailhead. The cart bed, sides, load, pole, yoke and ox bodies never move, so the cart travels in place. The GLB's static node pose is the t = 2 s pose (mid-stride, a quarter wheel turn). No skinning: every moving piece is a rigid node. intactOrRuined (the kit's 'Intact or ruined') affects the cart only: below 0.4 it is fresh with red rails and full sides; from 0.4 (the default) the right-hand rail fades to terracotta and one upper board on that side is gone; from 0.7 a second board and the upper tailboard are gone and one amphora is broken, with a shard on the straw; from 0.85 the boards bleach to terracotta. It never removes the wheels, pole, yoke or oxen. wheelRadius (bed, load and pole heights follow the axle, and the oxen's stride follows the rolling speed), amphoraCount (0–8 in two rows) and sideHeight rebuild the model. Params are baked into the GLB at their defaults and only change geometry when the scene is rebuilt in the viewer; only the defaults were rendered and checked. glb-lint: 0 errors and 5 expected warnings: 69 per-mesh materials sharing 9 colour names (over the direction's count, and flagged as duplicates), deliberately non-indexed flat-shaded geometry, nested sibling bounds (stakes, boards and rails on the sides), and leg and load meshes flagged as detached because each joint is a separate node that meets its neighbour at the hinge. The verdict reads UNVERIFIED only because no requirements contract was supplied. plan-check rejects only the hyphenated library part ids (its regex allows no hyphen); the same plan with the slug de-hyphenated passes. three-check and the GLB reload keep all 39 ids. Fix round 1 broadened the ears (they read as sticks) and tightened the hero, front and top framing.

About the Ox cart 3D model

Ox cart is a free animated low-poly 3D model from the Roman Forum set. It measures 2.0 m × 1.6 m × 4.9 m (W × H × D) at real-world scale and is built from 5,528 triangles across 69 meshes, with 39 named parts and a baked animation (8.0 s). Download the 622 KB GLB and drop it into three.js, React Three Fiber, Godot or Blender — free for commercial use, no attribution required.

Is the Ox cart 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), 622 KB: 5,528 triangles, 16,584 vertices and 69 materials, modelled in metres at 2.0 m × 1.6 m × 4.9 m.
Is Ox cart animated?
Yes — the GLB carries a baked animation (8.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 Ox cart 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 #16 of 1157.