I have a terrain engine with a total poly count of 18 million (3072x3072 grid) split into 576 tiles of 128x128. I am using frustum culling and LOD so at any time no more than 1 million polys are rendered. I get 6-8 Million tris/second. PIII 700 + GF2.
I am using drawelements and have vertex arrays totalling 207Mb. I want to speed it up with either CVA or VAR. I tried implementing CVA but got no speed up. I read somewhere that 1) I have to use a particular vertex array format and 2) For vertices greater than 10,000 CVA is disabled by NVIDIA drivers because the buffer would need to be too large. Is this still the case post detonator 10?
I then looked into VAR but Im not sure I will be allowed to allocate 207Mb of AGP memory or will I since it is just system memory? The other potential problem is that I read that reading the arrays from AGP is very very slow. I need to read the vertex arrays to calculate the joins between different LOD’s and possibly also collision detection. It was recommended that I keep a copy of the arrays in normal memory but this would mean I would be using 414Mb! which is too much.
So what is peoples opinion on what I should do? Will I be able to use VAR at all with such big arrays. If I use VAR am I going to see worse performance because I need to read the arrays (assuming I dont keep a local copy)
Any advice appreciated
I could of course try this out but from my experience of trying to implement VAR before its not a small job.