P-152: Virtual World Concept Update 102: Fractal Terrain Generation Part 8
I have now implemented a Perlin Noise system into the terrain.
I had already integrated “libnoise” into this project, and was using it to generate the noise for my previous attempt as well, but I had forgotten the input parameters to it. I assumed it required an array of points, but in actual fact it requires only a coordinate, and still produces a contiguous height field.
This meant that I could integrate it very easily with my existing system. I had done some experiments with rand() using hash functions and seeds to produce contiguous output, but this turned out to be unnecessary.
I have also modified the code that I was using to colour the terrain according to it’s height, so that it now works for subdivided nodes as well. The results are extremely promising.
The terrain subdivides (I am just performing one subdivision for now) perfectly, with the child nodes forming a contiguous heightfield with correct colour values. The two images below illustrate this. The first image is at a higher resolution to the second one. The area directly under the text “PhoenixGameDev” is clearly smaller and less detailed in the first image, and has been subdivided, becoming more detailed, in the second image.


The only problem, which is also apparent from these images, is the visible seams on the border between the LOD’s. This is a standard problem with this type of approach. There are various ways of dealing with it, which I will look at in the near future.
The next goal is to implement and test subdivision through additional tiers, and hopefully I should end up with some highly detailed terrain.



