ANGLE_instanced_arrays: drawArraysInstancedANGLE() 方法

ANGLE_instanced_arrays.drawArraysInstancedANGLE() 方法是 WebGL API 中的一种方法,它与 gl.drawArrays() 方法一样,可以从数组数据中渲染图元。 此外,它还可以执行元素范围的多个实例。

注意: 当使用 WebGL2 时,默认情况下此方法可作为 gl.drawArraysInstanced() 使用。

语法

js
drawArraysInstancedANGLE(mode, first, count, primcount)

参数

mode

一个 GLenum,指定要渲染的图元类型。 可能的值为

  • gl.POINTS: 绘制一个点。
  • gl.LINE_STRIP: 绘制到下一个顶点的直线。
  • gl.LINE_LOOP: 绘制到下一个顶点的直线,并将最后一个顶点连接回第一个顶点。
  • gl.LINES: 绘制一对顶点之间的线。
  • gl.TRIANGLE_STRIP
  • gl.TRIANGLE_FAN
  • gl.TRIANGLES: 为一组三个顶点绘制三角形。
first

一个 GLint,指定向量点数组中的起始索引。

count

一个 GLsizei,指定要渲染的索引数量。

primcount

一个 GLsizei,指定要执行的元素范围的实例数量。

返回值

无 (undefined)。

异常

  • 如果 mode 不是接受的值之一,则会抛出 gl.INVALID_ENUM 错误。
  • 如果 firstcountprimcount 为负,则会抛出 gl.INVALID_VALUE 错误。
  • 如果 gl.CURRENT_PROGRAMnull,则会抛出 gl.INVALID_OPERATION 错误。

示例

js
const ext = gl.getExtension("ANGLE_instanced_arrays");
ext.drawArraysInstancedANGLE(gl.POINTS, 0, 8, 4);

规范

规范
WebGL ANGLE_instanced_arrays Khronos 批准扩展规范

浏览器兼容性

BCD 表仅在启用 JavaScript 的浏览器中加载。

参见