It's been a slow week this week. I had the flu over the long weekend and my son picked it up during the week. Now that I've gotten the OSM data rendering, my new goal for the project is to try and get the whole Earth rendering. I've decided to use the SRTM dataset ( found here http://www.cgiar-csi.org/data/elevation/item/45-
srtm-90m-digital-elevation-database-v41) for my coarser elevation data.
To render the data I started implementing Chunked LOD. With chunked LOD the basic idea is to stick chunks of data into a quadtree with only at most a difference on 1 level of depth between each neighbouring node of the quadtree. I managed to get as far as implementing the general quad tree for the current terrain data I have rendering. It really made a huge difference in performance not regenerating all the data every time I moved across chunk boundaries. Even without threading the terrain generation I was getting pretty well realtime performance generating the data. Each node in the quad tree is 32x32 voxels, down to a resolution of about 1 meter x 1 meter for each voxel.
The next plan is to split the data into courser grained chunks. So for every couple entries of depth in the quad tree I'll have a chunk of elevation data to use to generate the terrain. I'd like to take a step back from what I currently have working and actually get the full earth rendering and then try to step through going deeper and deeper into data to the resolution that I'm currently rendering at.
Sorry about the screenshots this week they're not much to look at since it's been a slow week and mostly infrastructure changes. Next week will be much more interesting!
|The black lines represent the nodes of the quad tree.|
|More nodes over the water.|