我试过好几个月来学习IDirect3DVertexBuffer9和IDirect3DIndexBuffer9的工作原理.我读过多本书,电子书和论坛,我仍然无法弄清楚他们的工作原理.有人可以帮助我了解他们的工作方式和联系方式吗?
PS:我已经尝试搜索相关的问题,但没有什么感兴趣的.
谢谢.
解决方法
IndexBuffers用于存储器&速度优化. indexBuffer是对vertexBuffer中的顶点进行索引的索引列表.
所以说我要用2个三角形在屏幕上渲染一个Flat Quad.每个三角形占用3个顶点,所以只要一个VertexBuffer渲染四边形,我将需要6个顶点.
现在,如果我使用IndexBuffer,我只需要使用4个顶点(一个用于四边形的每个角).但是,我将需要6个索引,每个三角形的3个索引,将索引一个角顶点.
在大型机型上,可以节省内存大大提高速度,因为GPU将处理较少的顶点.
这是一个网站,有一些很好的示例代码:: http://www.codesampler.com/dx9src.htm在那里下载“Indexed Geometry”的示例.