← Portfolio · P-04
Graphics · Procedural Systems
A procedural terrain + foliage generator for strategy-scale scenes.
A Unity tool that shapes natural terrain from layered Perlin noise, places biome-aware foliage, and keeps 15,000+ objects rendering smoothly with LOD.
The generator, reimplemented live.
The original tool is a Unity/C# project. This is the same pipeline — layered noise, elevation-threshold biomes, clustered foliage — reimplemented in JavaScript with three.js, running in your browser right now.
Procedural generation tuned for strategy-scale scenes.
Layered Perlin noise controls terrain shape, then biome and elevation logic drives foliage placement so the map feels coherent instead of randomly cluttered.
Height maps
Layered Perlin noise drives the terrain profile and creates controllable variation across the map.
Forest clustering
A secondary noise layer controls tree grouping so forests appear intentional rather than uniformly scattered.
Terrain texturing
Water, grass, and mountain zones are derived from elevation thresholds for cleaner environmental transitions.
Scale & LOD
Unity LOD optimization keeps the scene responsive even with 15,000+ foliage objects in play.
The system centers on a modular ObjectGenerator script
that overlays a secondary noise map over the terrain's height map.
That structure makes it easy to tune terrain scale, forest density,
chunk size, and foliage type without rewriting the generator each
time.
Output from the Unity generator.
The live demo above is a browser port; these are renders from the original Unity tool itself, captured in the editor and in play mode.