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?
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…
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 ?
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) (