Hi, on my card box, it’s written 20 millions of triangles per second. Ok, but,

i render around 1.4 M of triangles per second, which all have vertex, normals, colors (not always used), texels, materials and textures.

What could i try to reach ? around 10M/sec ?


in order to come close to 10 or 15 million tris per second on your card you will have to use a triangle strips and store the vertex-data and color-data (etc) in arrays on the AGP memmory.

depending on what you are drawind start of with triangle strips, those are simple and fast. then try arrays… im currently working with arrays myselfe…

i am using arrays under AGP under Linux, using normals triangles. All is over some display lists as i can’t get some correct rendering directly without that…

you told that i could stand 10 to 15M/s ? does strip are so fast ???

don’t forget that this benchmark-triangles are also not bigger than 8x8 pixels (means: low fillrate) and in most cases they also are rendered with everything turned off (no blending, no z-testing, no texturung, no interpolation…).
So this benchmarks mostly shows only the results of some “fastest-possible-mode”, and they have nothing to do with the reality of 3D programming… it’s just marketing.

I understood that all these bench are made under the best conditions.

Now, i’m using zbuffer test, culling, one light, gourault shading, no shadow.
Which rate could i reach ?

Does it more near than 10M tri/sec, or better 5… I know i’m far from what we could stand, but i’d like to know.

Give triangle strips a try. When the strip gets large enough you approach ~1 vertex / triangle. Stitch unconnected tristrips together using degenerate triangles.

Let’s say you’ve got tristrip A,B,C,D and E,F,G - and they’re not connected.

A,B,C - 1st triangle
B,C,D - 2nd triangle
C,D,D - 3rd triangle (not drawn, it’s degenerate)
D,D,E - 4th tri, not drawn
D,E,E - 5th tri, not drawn
E,E,F - 6th tri, not drawn
E,F,G - 7th tri

sorry fresh, i don’t see what you mean. I know using strip triangles could increase all my render, maybe twice, i hope.

I just like to know which rate its possible to raise.

thanx anyway (i’d like u to explain more the degenerate tri…, are thay necessary ?)

No, they’re not needed, but they help. You should try to make your strips as long as possible. If you have many small strips it’s useful to join them together using “invisible” (degenerate) triangles as I described. The Geforce can really quickly detect degenerate triangles (2 indicies are the same) and not draw them. Degenerate tris are just a trick to make strips longer by joining smaller ones together, that’s all.

ah, it’s very interressant. i feel fool…
so, your drawing time will approach more & more to how many nb of tri u got. So it could maybe be drawn 3 more faster …