Quote: "The following reply was posted by TheeLord into Dark GDK to a thread you are watching:
I guess just creating terrain meshes externally and then using them in the game wouldnt be any slower than using the GDK rendered terrain huh? I still wish I could figure this out.."
No. It can be close - but requires more work... BUT not ALWAYS! Confused yet? I WAS! Still am!!
Here's the deal: The built in terrain does an AWESOME job CULLING - and that just means that ANYTHING that DOESN'T need to be RENDERED and can be "removed" from the GPU's task list of things to do without killing the end result - it does for you automatically! Why? In short - keeping poly count down = higer frame rates.
Making your Own Terrain - gives you individual VERTICE control, Individual VERTICE COLOR control (in most cases... there are more than one mesh format - some don't have the color thing) You have more control of how its textured.... and if you add a decent shader you can get the same and better looks than the stock terrain.
The trouble is your POLY COUNT. If you mesh isn't to complicated and the poly count is reasonably low - WIN WIN!!!!! If you start wanting TILED huge terrains, then you need to learn how to do frustrum culling - so you can EXCLUDE objects from the GPU's TASK LIST when they aren't visible anyways. (To speed things up)
Depending on the size of the terrain - even this might not help enough (like if you have a ton of tiles - you're looping through and doing a lot of FRUSTRUM checking which isn't the BEST use of your time if the COUNT of tiles is this high).... That's when you need to optimize HOW you frustrum cull.. like put FOUR "TILES" in a "empty BOX" - if the "Empty Box" is on the screen - then you should check each of the tiles in the BOX to see if they are on the screen - BUT if the BOX is not on the screen then you can SKIP 4 checks simply ignoring those tiles in the box.. because the box isn't on the screen anyway!
This is how you need to go about it.
there is another technique called occlusion culling - which I don't know how to do yet - but that would allow ANYTHING obsured by... say a mountain - to be considered "OFFSCREEN"... because you wouldn't see it anyways even when its drawn.... I really need to learn this ( It THINK it has to be something about checking VERTS or GROUPS of VERTS... if they obscure or not based on camera position and angle and frustrum but I'm guessing)
Frustrum is the AREA you can see.... Its often described as a "View port" or a view projection matrix... I think of it as a SQUARE CONE kinda... the tip being the camera - the big end being where the camera range STOPS.