名称
glDrawElementsIndirect — 从数组数据中渲染索引基元,并从内存中获取参数
C 规范
void glDrawElementsIndirect( GLenum mode,
GLenum type,
const void *indirect);
参数
mode
指定要渲染的原语类型。接受符号常量GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY, and GL_PATCHES
type
指定绑定到GL_ELEMENT_ARRAY_BUFFER绑定的缓冲区中的数据类型。
indirect
指定包含绘图参数的结构的地址。
描述
glDrawElementsIndirect通过很少的子例程调用来指定多个索引的几何图元。 glDrawElementsIndirect的行为与glDrawElementsInstanced相似,不同之处在于glDrawElementsInstanced的参数存储在内存中的间接指定地址处,并且由相应绘制调用传输的第ith个元素将从每个启用数组的元素索引[i] + baseVertex中获取。如果结果值大于按类型表示的最大值,则好像计算已上转换为32位无符号整数(在溢出条件下自动换行)。如果总和为负,则该操作是不确定的,它还支持为每个索引添加值baseVertex。
间接寻址的参数打包成一个结构(