OpenGL实现了一切吗?

时间:2014-09-13 16:31:14

标签: performance opengl 3d rendering instance

是否可以对OpenGL中的每个对象使用实例化,而不是仅将其用于共享相同顶点数据的对象?

如果我们可以实例化矩阵属性数据,那么我们也可以通过对每个属性使用glVertexAttribDivisor来实例顶点数据属性,而不仅仅是矩阵属性,不是吗?

1 个答案:

答案 0 :(得分:0)

您当然可以在每个实例中使用完全不同的位置数据。但是您无法更改实例之间的顶点数。此外,使用索引渲染时,索引对于所有实例都是相同的。如果您有一些实际在实例之间共享的属性,并且所有实例具有相同的基元类型和计数,则实例化才有意义。

如果您想通过一次绘制调用绘制多个不同的对象,您应该查看multi draw indirect