此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

WebGLRenderingContext.drawElements()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2015年7月⁩.

WebGLRenderingContext.drawElements() 方法 在 WebGL API 从数组数据渲染图元。

语法

void gl.drawElements(mode, count, type, offset);

参数

mode

枚举类型 指定要渲染的图元类型。可以是以下类型:

  • gl.POINTS: 画单独的点。
  • gl.LINE_STRIP: 画一条直线到下一个顶点。
  • gl.LINE_LOOP: 绘制一条直线到下一个顶点,并将最后一个顶点返回到第一个顶点。
  • gl.LINES: 在一对顶点之间画一条线。
  • gl.TRIANGLE_STRIP
  • gl.TRIANGLE_FAN
  • gl.TRIANGLES: 为一组三个顶点绘制一个三角形。
count

整数型 指定要渲染的元素数量。

type

枚举类型 指定元素数组缓冲区中的值的类型。可能的值是:

offset

字节单位 指定元素数组缓冲区中的偏移量。必须是给定类型大小的有效倍数。

返回值

None.

异常

  • 如果 mode 不是正确值, gl.INVALID_ENUM 将会抛出错误异常。
  • 如果offset 不是给定类型大小的有效倍数,gl.INVALID_OPERATION 将会抛出错误异常。
  • 如果 count 是负的, gl.INVALID_VALUE 将会抛出错误异常。

例子

js
gl.drawElements(gl.POINTS, 8, gl.UNSIGNED_BYTE, 0);

规范

Specification
WebGL Specification
# 5.14.11

浏览器兼容性

相关参考