PDA

View Full Version : Vertex Array slower ?


Vifani
09-01-2003, 09:41 AM
Someone can tell me why when I use Vertex, Normal and TextCoord Array the performance are slower?

If I render my scene with glTexCood, glNormal3f and glVertex3f I have many more fps !

anubis
09-01-2003, 10:04 AM
how many vertices are you passing to opengl with the vertex buffer ???

davepermen
09-01-2003, 11:47 AM
what hardware? on ati cards, i can only HIGHLY recomment to use GL_ARB_vertex_buffer_object.. vertex arrays ARE rather slow on them.. a Known Issue by ati, but they only say use vbo :D

Vifani
09-01-2003, 05:04 PM
how many vertices are you passing to opengl with the vertex buffer ???
I use a Radeon 9200. I think that this is the problem.

Can you tell me what is the difference between Vertex Buffers and Vertex Buffer Object? How can I use them? I pass only verticies or also normals and texcoords ?

Dia Kharrat
09-01-2003, 08:12 PM
Check out this thread: it explains the differences between vertex arrays and vertex buffers.

http://www.devmaster.net/forums/index.php?...p?showtopic=460 (http://www.devmaster.net/forums/index.php?showtopic=460)

anubis
09-02-2003, 02:35 AM
and this doc pretty well explains how to use them : sgi extension registry (http://oss.sgi.com/projects/ogl-sample/registry/ARB/vertex_buffer_object.txt)
also there is a tutorial (http://www.devmaster.net/forums/index.php?showtopic=360) here on devmaster

Vifani
09-02-2003, 06:01 AM
Thanks.

Vifani
09-02-2003, 09:20 AM
I have implemented Vertex Array with a larger amount of verticies and now the performance are pretty good also on Radeon graphic cards.

I proceed to use Vertex Buffers ;)

anubis
09-02-2003, 12:41 PM
I have implemented Vertex Array with a larger amount of verticies

which is why i asked =] the advantage of using vertex arrays usually disappears when you don't supply enough vertices

Vifani
09-02-2003, 12:59 PM
Yes :D

Can you tell me why now I have less fps with Vertex Buffer ?

anubis
09-02-2003, 03:49 PM
hmm, this depends on how you use them. the best way of course to load the data up once and never touch it again. especially if you declared the data as static data you shouldn't change it in the buffer or you might get serious performance hits. also on older cards buffer objects might not be fully supported by the hardware