A procedurally generated low-poly 3D spherical world. My first ever Unity project and very much a work-in-progress.
This is my first foray into Unity and 3D game / simulation development.
Inspiration was from the work of a very successful developer David Frampton (majicDave). It started life as a 3D world in C# and OpenTK (an OpenGL wrapper). A lot of the engine was working but I realised that I would be better served leaving the ‘heavy lifting’ to a game engine and focusing on the workings of the simulation / game. So, I changed to a Unity version and learnt what I needed as I went along.
The basic design is around procedurally subdividing an Icosohedran into ever smaller triangles (using a Quadtree data structure), and altering the location of the points to represent terrain. A cube map is used to hold the terrain height information and this can be altered to produce different worlds or simulate erosion of the land. The terrain is calculated every frame, decreasing the resolution of the subdivision as distance from the player increases.
With only a few hours a week to work on it there is a long way to go....