# Shingle Beach Module (Lighthouse and Rocky Coast)

Shingle module for the strand line: a 6 m square of pale pebble bank 1.5 m thick with twenty two graded cobbles and two rock outcrops loose on the surface. Tiles with the rock shelf and the water plane on its edge ports.

- **URL:** https://3dassets.dev/assets/lighthouse-and-rocky-coast-shingle-beach-module-948ae502
- **GLB (direct, CORS *, immutable):** https://cdn.3dassets.dev/assets/36607/v1/model.glb
- **Download (counted):** https://3dassets.dev/download/lighthouse-and-rocky-coast-shingle-beach-module-948ae502
- **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:** Environments & Scenes
- **Tags:** Historical, Low Poly, Exterior, Modular, Kit / Set
- **Geometry:** 612 triangles, 1,836 vertices, 2 meshes, 2 materials, 0 textures
- **Size (m):** 6 × 1.896 × 6
- **Animations:** none
- **File size:** 0.03 MB
- **Downloads:** 0
- **AI used (contributor-reported):** yes; model: Claude Opus 5

## About

Shingle module for the strand line: a 6 m square of pale pebble bank 1.5 m thick with twenty two graded cobbles and two rock outcrops loose on the surface. Tiles with the rock shelf and the water plane on its edge ports. Dimensions 6.00 by 1.90 by 6.00 m (X by Y by Z). Metre units, +Y up, +Z front, origin on the footprint at ground level. Connectors: north (ground) at (0.00, 0.00, -3.00) facing (0, 0, -1); south (ground) at (0.00, 0.00, 3.00) facing (0, 0, 1); west (ground) at (-3.00, 0.00, 0.00) facing (-1, 0, 0); east (ground) at (3.00, 0.00, 0.00) facing (1, 0, 0). Coast low-poly palette: lighthouse white, signal red, granite, wet shore rock, clifftop grass, timber, iron and sea. Flat shaded, no textures. 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/36607/v1/model.glb', (gltf) => {
  scene.add(gltf.scene)
})
```

## React Three Fiber

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

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

## <model-viewer>

```html
<model-viewer src="https://cdn.3dassets.dev/assets/36607/v1/model.glb" alt="Shingle Beach Module (Lighthouse and Rocky Coast)" 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/36607/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/36607/v1/model.glb")) await gltf.InstantiateMainSceneAsync(transform);
```

---
JSON: https://3dassets.dev/api/v1/assets/lighthouse-and-rocky-coast-shingle-beach-module-948ae502 · Loads with a plain GLTFLoader: no Draco/KTX2 loaders needed.