House builder with day/night cycle, CCTV coverage and procedural geometry

I made a house builder that runs in the browser, no backend :smiley:

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…