At now,we can store the vertex & texcoord data in video memory via VBO,so can we store the indice data in video memory?If is it possible,how to use it ?
Look at section 2.8B1 of the VBO spec. Also the “Vertex arrays using a mapped buffer object for array data and an unmapped buffer object for indices” example at the end of the spec.
Thanks ffish,but I found there is no any performance increase happened to place indice data in VBO,the FPS is same as using the indice data in sys memory,what do you think my test result?My display card is GFX5900.
Performances don’t necessarely have to increase using VBOs. VBOs are definitely faster than specifying vertex data one by one, but lets say your application is pixel bound (too much AA, resolution etc.), than improving the vertex processing would have no impact on FPS.
This is just an example, there are hundreads of other possibilities.
Some graphics cards prefer to store indices in AGP memory, others prefer to store it on the graphics card. This is one of the reasons there are 2 types of VBOs, one to hold indicies, one to hold vertex data.
Also, your app may not be agp-bandwidth limited, it could be fillrate, cpu, or transform bound instead. You could very well be using less bandwidth, but there is some other bottleneck somewhere.