Landscape optimizations and new landforms
I fixed a small error that caused was a big disadvantage: Tiny landscape nodes (greatest level of detail) have too big initial BBoxes, that makes them visible from very long distances. The node's BBox recalculates node generation by using actual node height values, and become smaller than initial BBox, so nodes may not be rendered. So at LOD 0...3 the engine generate too many small nodes, but does not render them. I made a more accurate calculation of initial BBox, so now it is possible to use LOD 0 and even LOD 1. When engine starts at surface level of planet, it takes 28 seconds to generate all landscape at LOD 0 and it consumes only 300 Mb of VRAM in Full HD screen resolution.
Now I'm going to improve landscape engine. By using "fast landscape loading" feature and improving of color texture generation (by using previously generated height map instead of it's generation again) I obtain only... 6 seconds for "clear" generation of planet at surface level at LOD 0! But fast landscape loading algorithm is still buggy, so I must debug it before new version is released. The second improvement (using previously generated height map) makes it impossible to obtain "deep/shallow water" color of oceans and gives artifacts at coastline. So to use it, I must implement normal water layer with underwater landscape and "underwater fog" effect. And 3D waves. smile Of course, all of this delays release of new version. But I can leave landscape generation unoptimized if you wish...
Next, I play with "Ridged multifractal noise" parameters and obtain much nicer looking mountains (these images are at LOD 0):
Then I subtract ridged multifractal term instead of adding it I get nice hills, which looks like water erosion:
I will try to add these hills to a terra surface generation shader and combine it with simple hills, mountains etc.
And here is a bonus screenshot: