# Ball Pit Frame with Balls (Trampoline Park and Soft Play)

A 2.4 m square ball pit 620 mm deep: a steel tray on a grey base with blue padded coping walls, a lime step over the near wall and forty four play balls in magenta, lime, amber and blue filling the well.

- **URL:** https://3dassets.dev/assets/trampoline-park-and-soft-play-ball-pit-frame-with-ball-2c1d5d6a
- **GLB (direct, CORS *, immutable):** https://cdn.3dassets.dev/assets/34620/v1/model.glb
- **Download (counted):** https://3dassets.dev/download/trampoline-park-and-soft-play-ball-pit-frame-with-ball-2c1d5d6a
- **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:** Buildings & Architecture
- **Tags:** Modern, Stylized, Interior
- **Geometry:** 1,356 triangles, 4,068 vertices, 6 meshes, 6 materials, 0 textures
- **Size (m):** 2.56 × 0.62 × 2.89
- **Animations:** none
- **File size:** 0.07 MB
- **Downloads:** 0
- **AI used (contributor-reported):** yes; model: Claude Opus 5

## About

A 2.4 m square ball pit 620 mm deep: a steel tray on a grey base with blue padded coping walls, a lime step over the near wall and forty four play balls in magenta, lime, amber and blue filling the well. The balls are one static heap at rest and never roll: each is a real separate sphere so a consumer can swap the heap for its own rigid bodies, but nothing in this file is simulated or rigged. Metre units, +Y up, the player side toward +Z, resting on y=0. Static geometry; no rig, 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/34620/v1/model.glb', (gltf) => {
  scene.add(gltf.scene)
})
```

## React Three Fiber

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

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

## <model-viewer>

```html
<model-viewer src="https://cdn.3dassets.dev/assets/34620/v1/model.glb" alt="Ball Pit Frame with Balls (Trampoline Park and Soft Play)" 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/34620/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/34620/v1/model.glb")) await gltf.InstantiateMainSceneAsync(transform);
```

---
JSON: https://3dassets.dev/api/v1/assets/trampoline-park-and-soft-play-ball-pit-frame-with-ball-2c1d5d6a · Loads with a plain GLTFLoader: no Draco/KTX2 loaders needed.