3DAssets.dev

Loading model

About

Upright piano: a boxed case with a painted front panel, a keyboard of twenty six naturals and seventeen sharps on its shelf, a fall front, two brass pedals and a hinged top lid on its back edge. Dimensions 1.50 by 1.37 by 0.97 m (X by Y by Z). Metre units, +Y up, +Z front; the origin sits on the ground at the footprint centre unless stated otherwise. Sun-bleached pine, oxblood shop paint, adobe, black smith iron, brass, glass, canvas, leather, hemp rope, street dust, red sandstone and a gilt sign panel. Rigid node-transform clips open, close drive the named parts on their own pivots. There is no skinning and no skeleton; every other surface is static. Only the top lid moves. The keys, the fall front and the pedals are static, since a rigid node transform cannot play them convincingly.

Use with an AI agent

Copy this prompt into your AI chat, then describe what you want to build with the asset.

Use the “Upright Saloon Piano (Wild West Frontier Town)” asset in my project.

Model: https://cdn.3dassets.dev/assets/30116/v1/model.glb
Asset page: https://3dassets.dev/assets/wild-west-frontier-town-upright-piano-b071ceda
Description: Free 3D model of a battered upright saloon piano with a hinged top lid and a full keyboard. Measures 1.50 by 1.37 by 0.97 m.

- Dimensions (X × Y × Z): 1.5 × 1.37 × 0.97 metres
- Triangles: 1.3k
- Animations: open, close
- Licence: CC0 1.0 Universal (https://creativecommons.org/publicdomain/zero/1.0/)
- Loading: Three.js GLTFLoader; no additional decoders required.

Also available as JSON, Markdown, or via the MCP server.

Import manually

Choose your framework, then copy the code into your project to load the asset.

import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'
import { AnimationMixer } from 'three'

let mixer

const loader = new GLTFLoader()
loader.load('https://cdn.3dassets.dev/assets/30116/v1/model.glb', (gltf) => {
  scene.add(gltf.scene)
  mixer = new AnimationMixer(gltf.scene)
  mixer.clipAction(gltf.animations[0]).play()
})

// Call from your render loop; deltaSeconds is time since the previous frame.
function updateAssetAnimation(deltaSeconds) {
  mixer?.update(deltaSeconds)
}

Common questions

How do I use this model with my AI development tools?
Press "Copy for AI agent" above and paste the prompt into Claude Code, Cursor, Codex, GitHub Copilot, ChatGPT or any other coding assistant. The prompt carries the direct CDN URL, the real-world size, the licence and the loading notes, so the assistant can fetch the model and place it in your project without you writing the loader yourself. For a permanent connection, add the 3DAssets.dev MCP server to your tool with one command (for Claude Code: claude mcp add --transport http 3dassets https://3dassets.dev/mcp) and the assistant can then search the whole catalogue, fetch files and read the usage snippets on its own.

MCP server setupGuide for AI agents

How do I get started?
Three ways, from quickest to most automatic. Download the .glb with the button and drop it into your engine's asset folder, where it imports like any glTF file. Or skip the download: copy the three.js, React Three Fiber or model-viewer snippet under "Import manually", which loads the model straight from the CDN. Or connect your AI agent to the MCP server and ask for it by name, and it will find, fetch and place the model for you.

MCP server setupAPI reference

Which game engines and tools can I use this model with?
Anything that reads glTF, which today means all of the major ones: three.js and React Three Fiber on the web, Godot 4, Unity, Unreal Engine 5, Blender and the model-viewer web component. The model is a self-contained binary glTF (.glb) with textures embedded, so there is one file to import and no plugin, converter or decoder to install first.
How do I import this model into Unity, Godot, Unreal or Blender?
Unity: install the glTFast package (com.unity.cloud.gltfast) from the Package Manager, drop the .glb into Assets and drag the prefab in, or load it at runtime from the CDN URL. Godot 4: copy the file into the project folder and the editor imports it as a scene you can instantiate. Unreal Engine 5: File > Import with the built-in glTF importer, which converts the axes for you. Blender: File > Import > glTF 2.0. Units are metres with +Y up in the file, and every importer above handles the conversion to its own axes automatically.
Can I use this model in a commercial game, and do I need to credit anyone?
Yes to commercial use and no to credit. Every model on 3DAssets.dev is released under CC0 1.0 Universal, which places it in the public domain: use it in a paid game, an app, a film or a client project, modify it, redistribute it, and put nothing in the credits. A link back is welcome but it is entirely your choice.

CC0 licence text

Can I load it from the CDN instead of downloading it?
Yes. The .glb file has a permanent URL on cdn.3dassets.dev that is CORS-enabled and never changes content, so you can pass it straight to GLTFLoader, glTFast or model-viewer in production and cache it as hard as you like. Downloading is only needed for engines that import from disk.
Do I need Draco, Meshopt or KTX2 to load it?
No. The geometry is quantized with KHR_mesh_quantization and the textures are re-encoded to WebP, both of which three.js, Godot, Unity and Blender read natively, so a plain GLTFLoader is enough. There is nothing extra to configure and no decoder to ship with your bundle.

Upright Saloon Piano (Wild West Frontier Town)

Free 3D model of a battered upright saloon piano with a hinged top lid and a full keyboard. Measures 1.50 by 1.37 by 0.97 m.

Download asset · 109.6 KB

More in Props & Furniture

Full size open net soccer goal (Football Soccer Stadium and Club Grounds)

Full size open net soccer goal (Football Soccer Stadium and Club Grounds)

Goal with 7.32 m clear width, 2.44 m clear height, 2 m deep open cord net and tubular frame.

@3dassets2.1k tris · 79 ↓
Swim Zone Buoy Orange (Beach Surf and Paddle Kit)

Swim Zone Buoy Orange (Beach Surf and Paddle Kit)

Sun yellow variant of the swim zone marker buoy with a coral cross topmark.

@3dassets1.4k tris · 70 ↓
Dune Grass Tuft (Beach Surf and Paddle Kit)

Dune Grass Tuft (Beach Surf and Paddle Kit)

Marram dune grass tuft: 26 tapered curling blades and four seed heads rising from a low sand mound.

@3dassets1.4k tris · 69 ↓
Stocked Surfboard Rack (Beach Surf and Paddle Kit)

Stocked Surfboard Rack (Beach Surf and Paddle Kit)

The freestanding surfboard rack stocked for hire: shortboard, fish, soft top learner and longboard standing tail down in the four slots.

@3dassets16.8k tris · 68 ↓
Warning Flag Pole (Beach Surf and Paddle Kit)

Warning Flag Pole (Beach Surf and Paddle Kit)

3.1 m warning flag pole: the patrol pole with a solid coral no swimming flag and coral finial.

@3dassets742 tris · 59 ↓
Dune Fence Run (Beach Surf and Paddle Kit)

Dune Fence Run (Beach Surf and Paddle Kit)

2.6 m dune wind fence: three round timber posts, twin twisted wire lines at three heights and weathered grey slats set at slightly uneven heights.

@3dassets2.2k tris · 58 ↓
Beach Umbrella (Beach Surf and Paddle Kit)

Beach Umbrella (Beach Surf and Paddle Kit)

2.4 m beach umbrella: sand anchor with base plate, steel lower pole with tilt collar and knob, timber upper pole, runner and stretchers, eight steel ribs under alternating coral and foam panels with a scalloped valance, vent cap and finial.

@3dassets2.1k tris · 57 ↓
Surf Wax Kit (Beach Surf and Paddle Kit)

Surf Wax Kit (Beach Surf and Paddle Kit)

Surf wax kit lying on the sand: sun yellow wax puck in a paper wrapper, a coral base coat bar and a toothed teal wax comb.

@3dassets1.5k tris · 56 ↓
Folding Beach Chair (Beach Surf and Paddle Kit)

Folding Beach Chair (Beach Surf and Paddle Kit)

Low folding beach chair: steel tube frame with feet, timber armrests and a striped coral and foam sling seat that sags into the back.

@3dassets1.2k tris · 56 ↓
Driftwood Log (Beach Surf and Paddle Kit)

Driftwood Log (Beach Surf and Paddle Kit)

2.8 m weathered driftwood log: twisted tapering trunk, two branch stubs, a splayed root end and one sawn end showing the grain.

@3dassets600 tris · 56 ↓
Lifeguard Megaphone (Beach Surf and Paddle Kit)

Lifeguard Megaphone (Beach Surf and Paddle Kit)

Handheld lifeguard megaphone resting on its grip: coral flared bell with grille, battery housing, pistol grip and trigger, siren switch and carry strap.

@3dassets956 tris · 51 ↓
Visitor Tasting Counter (Distillery and Bonded Warehouse)

Visitor Tasting Counter (Distillery and Bonded Warehouse)

Visitor tasting counter 2.8 x 1.1 m and 1.8 m to the back shelf: a cask staved oak front with iron bands, a plank top, six nosing glasses on a tray, a water jug, two unlabelled bottles and seven more glasses upended on the shelf behind. Nothing carries a label.

@3dassets2.2k tris · 51 ↓

Similar assets

Upright Piano (Village Hall and Community Events)Animated

Upright Piano (Village Hall and Community Events)

A 1.46 m upright piano in stained case work: a fall over three octaves of modelled keys, a blank red front panel, three brass pedals on a lyre board and a hinged top lid. The lid is a named node on the case back edge and lifts; the keys do not move.

@3dassets1.1k tris · 11 ↓
Upright Piano (Music Recording Studio and Instruments)

Upright Piano (Music Recording Studio and Instruments)

A 1.46 m upright piano in dark timber: a lidded carcass with a fall board, a hinged music desk, a keybed of naturals and sharps, a toe block with three brass pedals and four castors. It stands 1.31 m to the top.

@3dassets5.4k tris · 14 ↓
Top load washing machine 400 (Home Appliances and Utility Room)

Top load washing machine 400 (Home Appliances and Utility Room)

A 400 mm top loading washing machine: upright rear fascia with dial and display, a hinged top lid with its own gasket frame and grab handle on a named pivot, and levelling feet.

@3dassets1.6k tris · 10 ↓
Grand piano (Cruise Ship Deck and Lounge)Animated

Grand piano (Cruise Ship Deck and Lounge)

Baby grand piano 2.4 m long: a polished charcoal case on three turned legs with a brass toned pedal lyre, a full keyboard of white and dark keys, a music desk and a lid on its hinge that lifts on a prop stick, with a matching stool.

@3dassets636 tris · 12 ↓
Keyboard Piano (Cozy Home Interiors)

Keyboard Piano (Cozy Home Interiors)

Portable keyboard piano on a timber stand with raised black keys.

@3dassets676 tris · 9 ↓
Chafing dish with roll-top lid (Hotel and Resort Operations)Animated

Chafing dish with roll-top lid (Hotel and Resort Operations)

A 0.6 m chafing dish: a tube stand with levelling feet and side rails, a water pan, a gastronorm food pan, two fuel holders and a named pivoted roll-top lid with a knob.

@3dassets1.5k tris · 10 ↓
Upright piano (Haunted House and Ghost Hunting Kit)

Upright piano (Haunted House and Ghost Hunting Kit)

Upright timber piano carries individual keys, front supports and three pedals.

@3dassets6.5k tris · 10 ↓
Deck hatch with hinged lid (Cruise Ship Deck and Lounge)Animated

Deck hatch with hinged lid (Cruise Ship Deck and Lounge)

Flush deck hatch 1.5 m square: a raised yellow coaming with a charcoal gasket seat and a white steel lid on its hinge bar, with six dogs, a grab handle and a stay, for access to the spaces under an open deck.

@3dassets188 tris · 10 ↓
Full-size keyboard (Computers and Desk Gadgets)

Full-size keyboard (Computers and Desk Gadgets)

A 44 cm full-size keyboard: a chamfered low chassis with a fifteen by five key field, an indicator LED and flip-out rear feet.

@3dassets1.3k tris · 18 ↓
Tall upright freezer 600 (Home Appliances and Utility Room)Animated

Tall upright freezer 600 (Home Appliances and Utility Room)

A 600 mm full-height upright freezer 1.78 m tall, right hinged, with a full-length bar handle, an electronic fascia with display and fast-freeze indicator, and a deeper case for a thicker insulation wall.

@3dassets1.8k tris · 9 ↓
Oak Toy Box with the Lid Open (Jelly Friends Playroom)

Oak Toy Box with the Lid Open (Jelly Friends Playroom)

Free 3D oak toy box, 0.74 m wide, posed with the lid thrown fully back and upright. Open variant of the lift-lid toy box, game asset for a playroom or nursery.

@3dassets768 tris · 10 ↓
Saloon Swing Doors (Wild West Frontier Town)Animated

Saloon Swing Doors (Wild West Frontier Town)

Free 3D model of a pair of saloon batwing doors in their frame, each leaf on its own hinge. Measures 1.62 by 2.62 by 0.30 m.

@3dassets472 tris · 10 ↓