Procedurally Generated Content: Week 4

posted in: Blog, Procedural Generation | 0
A landmass divided by voronoi polygons

Sorry for the delay, writing these on backlog now.

This week I started my second PGC program in Unity, which diverges from realism and aims to create a bizarre and interesting landscape.  This program has been inspired by a series of papers I have read on PGC in the context of cities and dungeons.

In its earliest division, I used Voronoi polygons to divide the land into irregular shapes.  This was done using this wonderful implementation of Voronoi polygons in Unity.  Parameters were established to determine the range of possible polygons created as well as the width of the river between them.

This created a set of flat islands with a uniform gap between them.  Random bridges were created to connect them.  Bridges were created by picking a random direction from each Voronoi seed and raising the land until a new island was found.  A parameter was created to determine how many iterations through the Voronoi seeds were completed.

Perlin noise was applied to the terrain to add rolling hills.

Additional parameters were added to give the user more control over the landmass.  These include parameters to control the width of the bridges, the width of the rivers, period of the Perlin noise, max height of the Perlin noise, and the height of the landmass.

In the coming weeks I will further differentiate islands to make a bizarre continent.

An example of a landmass created with large river gaps and large bridge sizes
Islands with Perlin Noise and randomly generated bridges between them

Leave a Reply