• Advertisement
Sign in to follow this  
  • entries
    557
  • comments
    1237
  • views
    422377

Holy GeoMipMaps, batman!

Sign in to follow this  

151 views

Hooray! GeoMipMaps are done. I did it in a slightly odd way though. I'll talk about what I did after I show you my ultimate screenshot of awesomeness:
GeoMipMap hillarity
The odd thing is that I didn't use multiple index buffers. Instead, I used one index buffer and wrote (by hand) a 1300 line function to fill it. In the function there's something like this:

switch(thisLOD)
{
case thisLOD:
Output centre of tile to index buffer
switch(northLOD)
{
case northLOD:
Output skirt linking thisLOD -> northLOD to index buffer
break;
}
break;

switch(southLOD)
{
case southLOD:
Output skirt linking thisLOD -> southLOD to index buffer
break;
}
break;

switch(westLOD)
{
case westLOD:
Output skirt linking thisLOD -> westLOD to index buffer
break;
}
break;

switch(eastLOD)
{
case eastLOD:
Output skirt linking thisLOD -> eastLOD to index buffer
break;
}
break;
}


Each tile LOD can link to any other LOD greater than it, and there's 5 LOD levels. So LOD 5 (3x3 vertices) has to link north to LOD levels 1,2,3,4 and 5, link south to LOD levels 1,2,3,4 and 5, link west to LOD levels 1,2,3,4 and 5 and link east to LOD levels 1,2,3,4 and 5. So it's a pretty damn big switch statement.
I just discovered that sometimes random holes pop up in the terrain, but that only happens if I only render some chunks (I clip them against the frustum). So I think that's an issue with my rendering rather than the GeoMipMapping. Well, I bloody hope it is [smile]

I discovered VNPerfHUD today as well, so I'll go see how well my terrain renderer plays with it now I have GeoMipMapping. Unfortunately I only have a GeForce 4, so I can't get access to some of the snazzy features like GPU idle time. I'll see if I can get the program running on my sisters GeForce FX, that should tell me more info.
Sign in to follow this  


0 Comments


Recommended Comments

There are no comments to display.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Advertisement