
About
A 1.6 m two-door office credenza on a recessed plinth: an internal shelf, D pull handles, hinged leaves as named nodes and a timber top. Metre units, +Y up, the user side toward +Z, resting on y=0. Named pivoted nodes: door-left, door-right. Rigid node-transform clips: open and close. No skinning. No collision or navigation data.
Use with an AI agent
Copy this prompt into your AI chat, then describe what you want to build with the asset.
Use the “Two-door office credenza (Downtown Office Interiors)” asset in my project. Model: https://cdn.3dassets.dev/assets/16999/v1/model.glb Asset page: https://3dassets.dev/assets/downtown-office-interiors-credenza-2-door-018b4a86 Description: A 1.6 m two-door office credenza on a recessed plinth: an internal shelf, D pull handles, hinged leaves as named nodes and a timber top. - Dimensions (X × Y × Z): 1.62 × 0.776 × 0.464 metres - Triangles: 824 - 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/16999/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)
}Two-door office credenza (Downtown Office Interiors)
A 1.6 m two-door office credenza on a recessed plinth: an internal shelf, D pull handles, hinged leaves as named nodes and a timber top.