P-152: Virtual World Concept Update 105: Fractal Terrain Texturing Part 2
Before I began fixing the texturing issues, I was rendering the low detail heightmap completely seperately from the quadtree system. Realistically, the performance difference between doing this, and using a quadtree for all distances and LOD’s, would be minimal, since the heightmap is only used at long distances. It turns out, however, that the way I was loading the verts for the heightfield was making it impossible to set the UV’s properly. This is because I was generating the points using two loops, and simply iterating from one side of the heightfield to the other, however I was rendering the points in quads, or groups of 4.


When I changed the system to use the quadtree for all LOD’s the texture issues seemed to be mostly resolved.
I am still noticing frame rate issues at moderate to high detail, however, and I have noticed that the terrain is not square, as it should be. At a resolution of 64, the terrain is 7*9, rather than 8×8.
I am fairly confident that these issues can be fixed quickly however. The next goal will be some bug fixing, and adding support for multiple textures. At the moment, I just want to texture the terrain by height, which is the same thing that I was doing, except that this time, using materials, the results should be a lot better.






I have also got some ideas on how to fix the issue with the seams. The seams are created by a single quad sharing a border with two smaller quads (Two Different LOD’s). There is an extra vertex created when the tier is subdivided, and this extra vertex is what is causing the seam (The corner points of the quads match for the two different LOD’s).
This means that I will basically need to create an additional polygon that fills the gap between the two LOD’s. This would be very easy to do, if I knew that a particular midpoint was on a border, since I had access to all of the points that I would need. The problem is determining if a midpoint is on a border or not. This is something I am still working on.
