Archived

This topic is now archived and is closed to further replies.

InfestedFurby

Copying vertex data to video ram?

Recommended Posts

Is there a way in opengl to force or at least hint to the video card that I want it to cache vertex data in vram? Vertex arrays (as far as I can tell) force you to keep vertex data in system ram, which is costly since I need to render tons of fixed vertices. Display list implimentations could feasibly do this (some older versions of my Geforce2 mx 400 drivers do but the newer ones are slower with display lists), however it seems that most cards (including the newer gf4 and radeon 8500) have all but forgotton display lists and my game in fact runs slower on these cards than on my gf2. My dream rendering process would be to initially copy all the static vertex data to video ram and then tell opengl to render from that cache each frame. Is there a way to do this (preferably in a card neutral way) ?

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Look into the GL_ARB_vertex_buffer_object extension. Sounds like exactly what you want, and more

Be forewarned though, the VBO extension is not present in current extension strings, so verify that the extension is supported by testing the function pointers for null. This should be cleared up soon after the OpenGL presentation at SIGGRAPH this month.

Share this post


Link to post
Share on other sites
That extension is present in the extension string in the new nVidia drivers ( 44.03 anyway ), though be warned, I got a significant loss in speed when I loaded them up, I''ve since downgraded until the next release of drivers.

Death of one is a tragedy, death of a million is just a statistic.

Share this post


Link to post
Share on other sites