WebGL2RenderingContext: drawRangeElements() 方法

Baseline 已廣泛支援

此功能已成熟,並可在多種裝置和瀏覽器版本上執行。自 2021 年 9 月起,所有瀏覽器均已支援此功能。

注意:此功能在 Web Workers 中可用。

WebGL2RenderingContext.drawRangeElements() 方法是 WebGL API 的一部分,用於在給定範圍內從陣列資料中渲染圖元。

語法

js
drawRangeElements(mode, start, end, count, type, offset)

引數

模式

一個 GLenum,指定要渲染的圖元型別。可能的值有:

  • gl.POINTS:繪製一個點。
  • gl.LINE_STRIP:繪製一條連線到下一個頂點的直線。
  • gl.LINE_LOOP:繪製一條連線到下一個頂點的直線,並將最後一個頂點連接回第一個頂點。
  • gl.LINES:在兩個頂點之間繪製一條線。
  • gl.TRIANGLE_STRIP
  • gl.TRIANGLE_FAN
  • gl.TRIANGLES:為一組三個頂點繪製一個三角形。
start

一個 GLuint,指定 `offset` 中包含的最小陣列索引。

end

一個 GLuint,指定 `offset` 中包含的最大陣列索引。

計數

一個指定要渲染的元素數量的 GLsizei

type

一個 GLenum,指定元素陣列緩衝區中值的型別。可能的值為:

  • gl.UNSIGNED_BYTE
  • gl.UNSIGNED_SHORT
  • gl.UNSIGNED_INT
offset

一個指定元素陣列緩衝區中偏移量的 GLintptr。必須是給定 type 大小的有效倍數。

返回值

無(undefined)。

異常

  • 如果 mode 不是接受的值之一,則會丟擲 gl.INVALID_ENUM 錯誤。
  • 如果 `offset` 是給定型別大小的有效倍數,則會丟擲 `gl.INVALID_OPERATION` 錯誤。
  • 如果 `count` 為負數,則會丟擲 `gl.INVALID_VALUE` 錯誤。

示例

js
gl.drawRangeElements(gl.POINTS, 0, 7, 8, gl.UNSIGNED_BYTE, 0);

規範

規範
WebGL 2.0 規範
# 3.7.9

瀏覽器相容性

另見