A island generator build in Three.JS.
A plane is deformed using perlin noise to create the body of the island.
The island is populated with foliage with a series of iterative raycasts: Large objects are placed using raycasts positions in a grid with random offset, and then smaller objects are placed relative to large objects while checking for collision - the iterative nature of the casting creates natural cascades which mimic the natural clumping in real life landscapes.
