During game development in a lot of cases there is a need for generating terrain, because most of the time that is the base of the game space. If we don’t want to limit the game space, the terrain must cover the surface of a planet. Planets can’t be stored if we want to produce detailed terrain near the surface too, because of their size, which in this case means terrain can only be generated while the application is running. The preformance needs to be optimized, so the program can run in real time and the size needed for storage must be minimized in order to store all needed data in memory.
The goal is to create a structure in which the performance need and the needed storage size is minimal and it can contain the entire surface of a planet. Because of the procedural generation the terrain must represent the exactly same surface no matter how it was created. The terrain must change its detail dynamically based on the distance of the camera in order to appear in the required detail.
To complete the task I used the C++ language, the OpenGL API, the GLUT, GLEW, GLAD, GLFW and GLM OpenGL extensions and the Microsoft Visual Studio IDE.