threejs-procedural-building-generator
threejs-procedural-building-generator copied to clipboard
Roadmap
Big features
- [ ] Make Nordic-style roofs.
- [ ] Gardens.
- [ ] Procedural decorative elements.
- [ ] Procedural textures.
- [ ] Generate a polygon tree from a random shape. That would allow taking a map and generating a building for each plant.
Current features improvements
- [ ] Roof textures rotation.
- [ ] Improve camera
- [ ]
FloorGeometry
'sinsertRoofElements
should be more intelligent and generate random positions based on the bounding box, so collisions against the border are less usual. - [ ] Load meshes in parallel.
- [ ] Unnecessary polygons rendered when floors are smaller than the previous one, since all roof is rendered but only a small part is visible.
- [x]
FloorGeometry
s should have strict rotations (0, 45, 90 degrees...) instead of any value. - [x] Make demo work in all modern browsers.
Code style
- [ ] Add tests.
- [ ]
functions.js
should be merged intoBuildingUtils.js
. - [ ]
createBuildingGeometry
function inBuilding.js
is huge. Split it in smaller functions. - [ ] Replace id selectors with class selectors in
style.css
. - [ ]
texturePath
->atlasIndex
relation should be saved inAtlas
instead ofBuilding
. - [ ] Investigate why all meshes must be rotated.