名称
glDrawArraysInstanced — 绘制一系列元素的多个实例
C 规范
void glDrawArraysInstanced( GLenum mode,
GLint first,
GLsizei count,
GLsizei primcount);
参数
mode
指定要渲染的原语类型。 接受符号常量GL_POINTS,GL_LINE_STRIP,GL_LINE_LOOP,GL_LINES,GL_TRIANGLE_STRIP,GL_TRIANGLE_FAN和GL_TRIANGLES。
first
指定启用的数组中的起始索引。
count
指定要呈现的索引数。
primcount
指定要呈现的指定索引范围的实例数。
描述
glDrawArraysInstanced的行为与glDrawArrays相同,只是执行了元素范围的primcount实例。具有除数N(其中N不为零)(由glVertexAttribDivisor指定)的那些属性每N个实例前进一次。因此,从实例顶点属性传输的元素由下式给出:
实例除数
顶点着色器可以将实例的值读取为gl_InstanceID。
要启用和禁用通用顶点属性数组,请调用glEnableVertexAttribArray和glDisableVertexAttribArray。
如果未启用与顶点着色器所需的通用属性相对应的数组,则将从当前的通用属性状态获取相应的元素。
错误
如果mode不是可接受的值之一,则