Infinite Terrain Generation

This project was a year long project (during 2017) which was used as the basis for my honours thesis for my degree (Bachelors of Engineering with Honours in Software Engineering). This project concluded with a grade of 92%, with the full report being available here.

The report entails all the background research, decision making, and the method which built up the final algorithm used.

Why is this project innovative?

This project produced an algorithm which is capable of producing theoretically infinite (very large-scale) terrain (only bounded by numeric precision). Other approaches of very large-scale terrain generation, that are seen in games such as Minecraft, No Mans Sky and World of Warcraft, are that all require a proportional amount of storage on the computer to the amount of terrain generated. What makes this unique is that the terrain generation here requires zero storage, regardless how much terrain has been generated. The only storage required is completely in memory and is a fixed amount (under 1 GB) regardless of how much terrain has been generated.

The core innovation features of this project are:

  • The use of irregular polygons as the base structure to the terrain to avoid obvious patterns
  • Zero long-term storage required on the computer
  • Repeatable results given the same initial numerical seed
  • Theoretical infinite terrain generation in all directions (only bounded by software limits)
  • Biomes, and other realistic terrain features such as mountains and water beds

Screenshots

Showing coast lines, and various biome differences

Coast

A gradient mountain around a water bed

Mountains

Mountains with snow

Snow