So first off here is a picture of my planet:
That picture might be a bit big but you get the idea... So the planet has it's heights generated on the shader using perlin noise and so it can change in real time. However, it is clear that the scale is all wrong. I need an adaptive quad tree to achieve good looking terrain at space, atmosphere and ground levels. The only problem is... I don't know how to fill the quad tree with the data.
How is the vertex data stored in a quad tree and split? Splitting the quad tree is one thing but splitting the data is another.
My implementation is done like this article - http://acko.net/blog/making-worlds-1-of-spheres-and-cubes/
I create the sphere from a cube by normalizing it. So this brings me on to another problem: I'll need 6 quad trees to split my planet up. One for each face. How will i extract the planes to subdivide them from vertex data?
My last question is how do i actually fill the quadtree with the data. Most examples on the internet all use things such as Ogre/Irrlicht/D3D and i haven't seen any detail on how to do this in OpenGL. Some source code would be a great help. If you require any of my source code to answer just comment and i will attatch it. For example - How could i change this to hold vertex data - https://github.com/veeableful/Adaptive_Quadtree_Minimal Thanks in advance.
A video of the shader noise generation can be seen here:
Edited by Vangoule, 28 January 2013 - 10:42 AM.