# Modular London terraces in three.js: sockets, assembly files and meshopt LODs

**URL:** <https://discourse.threejs.org/t/modular-london-terraces-in-three-js-sockets-assembly-files-and-meshopt-lods/94887>\
**Category:** Resources\
**Created:** [October 1, 2026, 7:12pm UTC](https://discourse.threejs.org/t/modular-london-terraces-in-three-js-sockets-assembly-files-and-meshopt-lods/94887 "2026-10-01T19:12:41Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![StovBuilds](https://avatars.discourse-cdn.com/v4/letter/s/43a26b/32.png) [@StovBuilds](https://discourse.threejs.org/u/StovBuilds)\
**Post date:** [October 1, 2026, 7:12pm UTC](https://discourse.threejs.org/t/modular-london-terraces-in-three-js-sockets-assembly-files-and-meshopt-lods/94887/1 "2026-10-01T19:12:41Z")

</div>

Sharing how our modular London terraces load in three.js, in case the pattern is useful for anyone building dense street scenes.

Each house is made of separate GLB parts: front wall, bay stack, sash windows, door, chimney, roof and so on. Parts carry named sockets on a shared metre grid, so they line up in code rather than in a modelling tool. A finished house is not a merged model but an **assembly file** : part ids, transforms, per-part materials and open/closed poses. A small loader turns that into a `Group`, which keeps a whole terrace editable: swap a door, change the brick colourway, or repeat the house along a street.

Every part ships as high, medium and low detail GLBs, metre scale, with `EXT_meshopt_compression` and quantisation, so you need `GLTFLoader.setMeshoptDecoder(MeshoptDecoder)`. Uncompressed copies are included for tools that don’t read meshopt. Triangle counts per level are published for every part, so you can budget a scene before loading it.

There’s a worked example with tested code for repeating a house into a street:

> **[How to build a London terrace in three.js from modular GLB parts | Assets for...](https://assetsforthreejs.com/guides/build-a-london-terrace-in-three-js/)**
>
> Load a Victorian London terrace house from an assembly file, repeat it into a row on the kit’s 5 m pitch, and choose a detail level. Tested code for three.js 0.186.

Disclosure: these are our own packs, sold at [assetsforthreejs.com](http://assetsforthreejs.com). There is a free London Street Starter (a terrace house and a restaurant front, ready assembled, six props and a working example scene) if you want to look at the LOD and loading setup first-hand.

Happy to go into the socket and assembly format in more detail. It’s a fairly generic pattern for any modular kit.
