[英]Do I need multiple vertex buffers for similar objects in openGL?
例如,给定两个具有相似顶点的立方体,例如,
float pVerts[] =
{
0.0, 0.0, 0.0,
1.0, 0.0, 0.0,
...
};
glGenBuffer(1, &mVertexBuffer);
glBindBuffer(...);
glBufferData(...);
我可以将这组顶点缓存出来供以后使用吗? 或者,换句话说,如果我想要第二个立方体(具有完全相同的顶点数据),我是否需要生成另一个顶点缓冲区?
使用着色器,同样适用吗? 我可以使用相同的程序绘制这些立方体吗?
您可以使用相同的顶点缓冲区来绘制任意数量的对象(着色器与否)。 如果要绘制第二个对象,只需更改模型矩阵并再次绘制它。
对于着色器,您可以使用相同的着色器绘制任意数量的对象。 只需绑定着色器,然后根据需要触发尽可能多的绘制调用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.