# Walled hanok plot and village street (Korean Hanok Village and Street)

A whole village plot laid from 3 m modules on a 30 m square of beaten earth, with the street running past its gate. The tile roofed gate house stands on the south axis of a clay and stone boundary wall, with a paper lantern hanging each side of it and a stepping stone path...

- **URL:** https://3dassets.dev/assets/korean-hanok-village-and-street-walled-h-d28cafda-starter-scene
- **GLB (direct, CORS *, immutable):** https://cdn.3dassets.dev/assets/38093/v1/model.glb
- **Download (counted):** https://3dassets.dev/download/korean-hanok-village-and-street-walled-h-d28cafda-starter-scene
- **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, Realistic, Kit / Set
- **Geometry:** 89,850 triangles, 115,804 vertices, 226 meshes, 12 materials, 0 textures
- **Size (m):** 30 × 6.138 × 33.415
- **Animations:** none
- **File size:** 2.32 MB
- **Downloads:** 1
- **AI used (contributor-reported):** yes; model: Claude Opus 5

## About

A whole village plot laid from 3 m modules on a 30 m square of beaten earth, with the street running past its gate. The tile roofed gate house stands on the south axis of a clay and stone boundary wall, with a paper lantern hanging each side of it and a stepping stone path leading in. The main house sits at the head of the yard on its stone plinth, three bays of timber frame with the open maru floor in the middle and a papered room each side, and the side wing closes the west. The east range is deliberately open topped: plinth, raised maru floor and walled room modules with the rafter and eave runs carried round both sides at roof height, so the roof line reads while the maru, the chest, the low table, the cushions, the folding screen, the brazier, the rice chest, the lamp and the loom inside stay visible and walkable. A walk through the scene has no vertical movement, so a roofed interior would be neither reachable nor photographable, which is why the roof cassettes are proved instead on the two bay store in the south west corner, where two frames on two plinths carry two hipped cassettes closed by ridge runs and a stepped lane climbs to the plinth. The kitchen hearth with its two cauldrons, the ondol firebox, its underfloor flue run and the chimney line the north east of the yard with the firewood beside them, the jangdokdae terrace carries nine fermentation jars in three sizes, and the yard holds the well, the water trough, the mortar and pestle, the stone basin, the persimmon drying rack, a persimmon tree, a pine, bamboo and a stone pagoda ornament, with a lotus pond of four water modules inside its coping in the south. Outside the wall the street carries a market shed of two gabled cassettes over the trestle stall, the produce baskets, the straw sacks, a bench, a stack of roof tiles and a hanging sign board whose faces are blank. Every board and painted field in the scene is an abstract shape and carries no characters of any script.

## Use with three.js

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

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

## React Three Fiber

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

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

## <model-viewer>

```html
<model-viewer src="https://cdn.3dassets.dev/assets/38093/v1/model.glb" alt="Walled hanok plot and village street (Korean Hanok Village and Street)" 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/38093/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/38093/v1/model.glb")) await gltf.InstantiateMainSceneAsync(transform);
```

---
JSON: https://3dassets.dev/api/v1/assets/korean-hanok-village-and-street-walled-h-d28cafda-starter-scene · Loads with a plain GLTFLoader: no Draco/KTX2 loaders needed.