I made a house builder that runs in the browser, no backend ![]()
Demo:
Source code:
- 67 furniture items, all procedural geometry β no gltf/obj files
- day/night sun arc with lamps that light up at night
- multi-floor buildings with stairs that cut holes in the floor above
- wall cutaway mode (dot product visibility check per orbit)
- doors/windows punch through walls via ShapeGeometry holes
- CCTV cameras with animated vision cones from real hikvision/reolink specs
- wall and floor patterns rendered to CanvasTexture, no image files
three.js 0.169, next.js, typescript. curious if anyone has a better approach for the wall cutaway than checking dot products on every orbit changeβ¦