VertexBuffer TNL

Started by
2 comments, last by nes8bit 24 years ago
Are vertex buffers required to be used if you want to get full TNL support? I read some nvidia doc and it said it was recommended. Since I do not have a TNL card I cannot check it. Also, if I am passing on or two triangles to a VertexBuffer then tansforming it then rendering it, would it be slower than just using DrawPrimitive?
Advertisement
You are not required to use vertex buffers to utilize TnL, DrawPrimitive() is accelerated as well. When using TnL and vertex buffers you shouldn''t use Process() (Or is it ProcessVertices()?) as it doesn''t utilize the TnL.

If you are only rendering two triangles with each DrawPrimitive() then it would probably be faster to skip vertex buffers. Vertex buffers should be used for primitives where vertices are shared by several triangles, so that the vertices aren''t transformed more than once.
I think it''s ProcessVertices(). Good thing that it does not require vertexbuffers because I never wanted to implement them in the first place.
hi

They might not be needed, but wehn i let my Programm run on GeForce DDR, with TnL enabled, it slowed down extremly.
I used the DrawPrimitve Methods, to draw big Objects ( around 2000 Triangles ).
I think the Problem with DrawPrimitive is, that your Vertexdata lies in conventional Memory, and every Time you render, it has to be transferred to the accelerator because the TnL unit only works with the VideoMemory. But when using VertexBuffers, you can create them in Video Memory, and so the Cards TnL Unit has direct Access to the Data.

But i never tested my rewritten Engine with VertexBuffers, so it might be another Problem with my code...

Lars
--------> http://www.larswolter.de <---------

This topic is closed to new replies.

Advertisement