使用统一的glDrawElements?

时间:2013-12-27 23:43:16

标签: c++ opengl

我目前正在使用glDrawElements发送一堆顶点供GPU渲染。我现在遇到的问题是,我想为每个顶点分配一个值(称为material),因此可以在顶点着色器中使用它。我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

你做不到。对于整个绘制调用(因此名称),统一值是统一的 - 并且不能在单个基元的顶点之间改变原则。对于每顶点值,您必须使用属性。 GL保证至少有16个通用属性,每个属性最多为vec4。如果这不是enoguh,您可以使用某个属性(或gl_VertexID内置)来索引到纹理缓冲区对象(或标准纹理)。