Procedural Island Generator Illustration.
Using Blender’s Geometry Nodes.
A personal project influenced by Nordic, Scottish, and Irish islands.
I wanted to create a randomly generated island by the touch of a button using Blender’s geometry nodes.
Each island is unique in Shape, rotation, size, and asset scattering.
Every model is created and textured by me and all textures are procedual.
(A more detailed process on how this was created can be found further down.)
Rendered using the Eevee render engine.
All of the featured Islands.
The different House variations.
The of the Light Houses Featured.
The Docks Featured. (these were the first objects I textured so they’re not the best).
Some of the debris and other assets. (The textures were rushed on these. but they are so small on the main render that it’s hardly noticeable )
The Trees and plants are all procedurally made except for the trunks.
The scene in Blender with the very large messy Node tree and on the right are the variables that control every aspect of the island height, rotation, scale, tree amount, houses, lighthouses, docks etc:
Below is a very simple breakdown of what’s going on in the scene.
-Each island starts life as a subdivided Plane.
-The plane is then rounded off and a texture is overlayed which deletes parts of the mesh. This texture is random and constantly changing.
-The plane is then extruded.
-Some more subdivision surfacing is done and another texture is overlayed which sets the position of the vertices to create mountain-like structures.
– The sea floor is added as a subdivided cube. The height of the cube is influenced by the proximity of the mountain-like object.
– Then the sea and the assets are added and textured.
There was a lot of other problem-solving going on in this scene which was a lot of fun to work out. For instance, the dock always appears at the edge of the island close to the lowest grass point and they appear more often if there is a house or a lighthouse present on the island.
Thanks for checking out my project.
Continent – ANBR