Procedural Module

3rd year procedural generation module within Directx11

Example Scripts

I began by creating a simple Perlin noise terrain, by converting Ken Perlin’s original algorithm into C++ and then adding environmental texturing through the use of a pixel shader. The same Perlin noise was also used in conjunction with a compound sine wave to create the water that is seen in all the images.

PerlinNoise

I then developed a more complex type of terrian, using the Diamond-Square algorithm, which created the outputs seen below.

placeholder image 0 placeholder image 1 placeholder image 2

Here are a couple of snippets of the Diamond Square code

placeholder image 0 placeholder image 1
placeholder image 0 placeholder image 1

Finally I used cellular automata to produce the final terrain type, which was my favourite method to implement.

Cellular Automata

Here are a couple of snippets of the Cellular Automata code

placeholder image 0 placeholder image 1