High-polycount VertexArray Performance???

hi, I’m stuck with kind of a lame problem here…
I am trying to render a “high”-polycount scene using glDrawElements(GL_TRIANGLES,…) with about 350000-400000 polys. I disabled multitexturing and other fancy stuff…only singletexturing and lighting is enabled - but still my framerate is only about 8 FPS.
Note that I have a GeForce 2 TI, which should actually perform MUCH better.

Now, I used a profiler on my app, and found out, that 99.99% of the time is spent by glDrawElements…
WHY is that so? Isn’t the GPU supposed to render independent of the CPU? Any suggestions?
Of course there’s tri-stripping, and NVidia VAR arrays…but do these make so much of a difference?

thx in advance for your help!

hmm…I rendered a scene of one milion of triangles with one light on my Radeon 9100, using glDrawElements it takes 17fps, but with DisplayList it takes 36fps
I think its limitation of your GF2Ti

The prob with display lists is, that they guarantee 100% that the vertex/face data is stored in video memory.
Now, let’s assume, that we have approx. twice as many vertices as faces, so we have:
2 million vertices -->
–> x,y,z,w,u,v,normal (x,y,z)
–> gives 9 floats per vertex (for single texturing)
1 million face indices --> 1 DWORD each
thats: 40 million bytes, or approx 38.5 MB of wasted graphics memory…

You should take a look at the ARB_vertex_buffer_object extension. Standard vertex arrays are slow.

@OmegaSquad:

i think that you did simply an important thing very wrong - no idea what it could be - but i can show you a demo of my gfx-engine and it renders 50k polys @ 40~45FPS on my geforce 2 MX with 32MB (first version of gfx2mx) by using vertex arrays and draw elements.
surely, i don’t know what it could be - but i’m sure that there is something massive wrong.
post some code ?

DJSnow: 50k tris * 42.5fps = 2.1 millions tris per sec

OmegaSquad: 375k tris * 8 fps = 3 million tris per sec

I just say VBO.

Originally posted by Dr. Trax:
hmm…I rendered a scene of one milion of triangles with one light on my Radeon 9100, using glDrawElements it takes 17fps, but with DisplayList it takes 36fps
I think its limitation of your GF2Ti

One milion with 17 fps!!!???, my aplication slows down with much less (few thousend) (gf2mx, AthlonXP1700) (

(sorry for my broken english)