gpt4 book ai didi

c++ - openGL 中的相似对象是否需要多个顶点缓冲区?

转载 作者:行者123 更新时间:2023-11-30 02:02:27 25 4
gpt4 key购买 nike

例如,给定两个具有相似顶点的立方体,例如,

float pVerts[] = 
{
0.0, 0.0, 0.0,
1.0, 0.0, 0.0,
...
};
glGenBuffer(1, &mVertexBuffer);
glBindBuffer(...);
glBufferData(...);

我可以只缓存这组顶点供以后使用吗?或者,换句话说,如果我想要第二个立方体(具有完全相同的顶点数据),我是否需要生成另一个顶点缓冲区?

对于着色器,同样适用吗?我可以使用相同的程序来绘制这些立方体吗?

最佳答案

您可以使用相同的顶点缓冲区来绘制任意数量的对象(着色器与否)。如果要绘制第二个对象,只需更改模型矩阵并重新绘制即可。

同样适用于着色器,您可以使用相同的着色器绘制任意数量的对象。只需绑定(bind)着色器,然后根据需要触发尽可能多的绘制调用。

关于c++ - openGL 中的相似对象是否需要多个顶点缓冲区?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13127919/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com