Above is a screenshot of one of my tests with the landscape. The most fancy thing about this terrain is that it is completely made up of bezier curves. With bezier curves we can make the terrain look super smooth no matter how much the player wants to zoom in. The curves are rendered on the GPU using Loop-Blinn’s technique from GPU Gems 3. I adapted the technique a little bit to render both convex and concave curves in one draw call. This technique is super fast but the area below the surface of the planet has to be filled too. This requires not only generating triangles for the curves but also for the interior of the planet.
The above image shows the triangles that my simple algorithm (for now) generates. Using this algorithm, the triangles can be generated in real-time (takes 0.5ms currently). It will get a lot more complex though because we have to add different layers of cover (rocks, grass, snow), vegetation, water and probably a lot more. But as long as I don’t let the designers go completely crazy it will probably work out. 🙂
The above screenshots may not look that pretty (as its a development shot) so here is also a little artist impression of what the game could look like in a few months time.