# Roofed Puppet Theatre (Abandoned Puppet Theatre and Prop Vault)

Intact timber theatre shell with full back and side walls, framed clear audience roof panels and opaque rear vault roof. Broad front entrance bays remain open.

- **URL:** https://3dassets.dev/assets/abandoned-puppet-theatre-and-prop-vault-roofed-puppet--46329281
- **GLB (direct, CORS *, immutable):** https://cdn.3dassets.dev/assets/31053/v1/model.glb
- **Download (counted):** https://3dassets.dev/download/abandoned-puppet-theatre-and-prop-vault-roofed-puppet--46329281
- **Licence:** CC0 1.0 Universal: https://creativecommons.org/publicdomain/zero/1.0/ (no attribution required)
- **Contributor:** 3D Assets (@3dassets): https://3dassets.dev/u/3dassets
- **Category:** Props & Furniture
- **Tags:** Fantasy, Stylized, Modular
- **Geometry:** 12,900 triangles, 9,196 vertices, 4 meshes, 4 materials, 0 textures
- **Size (m):** 10.011 × 3.94 × 8.016
- **Animations:** none
- **File size:** 0.22 MB
- **Downloads:** 0
- **AI used (contributor-reported):** yes; model: GPT-6

## About

Intact timber theatre shell with full back and side walls, framed clear audience roof panels and opaque rear vault roof. Broad front entrance bays remain open. Dimensions 10.01 × 3.94 × 8.02 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original faded theatrical craft. Static puppets and machinery; no animation, audio or structural certification. Static geometry; no rig, animation, collision or navigation data.

## Use with three.js

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

const loader = new GLTFLoader()
loader.load('https://cdn.3dassets.dev/assets/31053/v1/model.glb', (gltf) => {
  scene.add(gltf.scene)
})
```

## React Three Fiber

```jsx
import { useGLTF } from '@react-three/drei'

export function RoofedPuppetTheatreAbandonedPuppetTheatreAndPropVault(props) {
  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31053/v1/model.glb')
  return <primitive object={scene} {...props} />
}
useGLTF.preload('https://cdn.3dassets.dev/assets/31053/v1/model.glb')
```

## <model-viewer>

```html
<model-viewer src="https://cdn.3dassets.dev/assets/31053/v1/model.glb" alt="Roofed Puppet Theatre (Abandoned Puppet Theatre and Prop Vault)" camera-controls auto-rotate></model-viewer>
```

## Blender

```python
# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.
import bpy
bpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/31053/v1/model.glb
# Metres and +Y up are converted to Blender's Z-up scene automatically.
```

## Godot

```gdscript
# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.
var packed := load("res://models/model.glb") as PackedScene
var model := packed.instantiate()
add_child(model)
```

## Unity

```csharp
// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,
// or load it at runtime straight from the CDN:
using GLTFast;
var gltf = new GltfImport();
if (await gltf.Load("https://cdn.3dassets.dev/assets/31053/v1/model.glb")) await gltf.InstantiateMainSceneAsync(transform);
```

---
JSON: https://3dassets.dev/api/v1/assets/abandoned-puppet-theatre-and-prop-vault-roofed-puppet--46329281 · Loads with a plain GLTFLoader: no Draco/KTX2 loaders needed.