##Introduction:

This is a procedural pseudo-infinite land generator written by Andreas Sepp for his Bachelor's thesis titled "Protseduuriline maastiku genereerimine" and computer graphics project course. It is written in C# with Unity. 
Currently the land generation is not multithreaded which means that the application hangs when generating new land.

##Installation:

The application should run on any modern computer without having to install anything. It does run better on DirectX but if it is not installed, it will fall back to OpenGL. All in all, there is no need to install anything to run this application.

##Controls:

Alt+F4 -  to terminate the application at any time.
C - to toggle control over cursor. By default mouse controls the camera rotation. Pressing C lets you interact with the UI.
N - to toggle flying. When flying is off, you can run and jump around the terrain.
Z - to descend while flying.
Space - to ascend while flying.
F - to hide the sidebar UI.

##Sidebar options:

When you have toggled cursor on with C, you can play around with the parameters in the left menu (press F if you toggled it off before).

Auto generate - lets you disable automatically generating new chunks as you move. This is a simple way to inspect the terrain without the freezes when generating new land due to moving.

Render radius - affects the number of chunks loaded at the same time. Large values can significally slow down the application.

Biome X and Y offset - let you offset the noise used for determining biomes. For example setting X offset to 10, will shift all biomes by 10 blocks. This is for easily immitating teleporting to another position in the world without actually having to travel large distances yourself.

Biome chunk width lets you change the size of each Voronoi cell that the terrain consists of.

Biome size frequency lets you control the size of biomes. Making it smaller than the default will make biomes larger and vice versa.

NB: For the last 4 properties to take effect, the chunks must be regenerated using the given button.

##Other tips for usage:

Since the application is sadly not multithreaded yet, it is best to generate a load of chunks with radius 6-8 and then disable auto generation. This way you can walk/fly around the terrain without the application freezing for a moment every 16 blocks (the length of 1 chunk).


##Used free assets:

Base terrain textures by Kenney - http://kenney.nl/
Tree models by Valday Team - https://www.assetstore.unity3d.com/en/#!/content/40444


Andreas Sepp, 2016