Kept working at the height field and got quite some problems fixed with it. Added a gauss median filter to smooth the landscapes and I added a rather simple part to use a low resolution image to seed the fractal generator. This somewhat works (well the code is correct, but even creating a small image is hard). I will soon post some images of it. Had no time to render them. To fix the problems to create the image I will add a simple editor to define them in my program, so I can actually see the height map while defining it.
But I had some great idea for the future. The next two big issues I want to fix are the multi resolution feature (the height field has a large image, but it displays a low res version for parts far away) and the raytracer. The raytracer needs too much memory. For the first one I actually had a good idea, the fractal in principle is recursively defined. But I implemented it iteratively and I guess, this is the normal case. But that is not a good idea. If I would have done it recursively I could actually have used that code for resolution control.
And I think, I will add code later for exactly that. I can easily use the current generator with some slight modifications for that. After all, a small scale image now can be used to generate a big fractal, so with some changes, I should be able to only do that to a small part. I only have to get it to always create the same data and I am finished.
I don't want to change the parts I already have, not for compatibility, but for the implementation of erosion. I am certain, that I cannot simulate erosion on a very fine grained height field. So if I add that special version, that does it by using a seed image, I can take the eroded landscape and just add some fractal details on a small scale. That is actually not wrong, as the amplitude of the fractal generator in that case can be quite low and so only creates very slight movements, that should not really damaged the results from the erosion simulations.