WebGLRenderingContext: getBufferParameter() 方法

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

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

WebGLRenderingContext.getBufferParameter() 方法是 WebGL API 的一部分,用於返回有關緩衝區的資訊。

語法

js
getBufferParameter(target, pname)

引數

目標

一個指定目標緩衝區物件的 GLenum。可能的值

gl.ARRAY_BUFFER

包含頂點屬性的緩衝區,例如頂點座標、紋理座標資料或頂點顏色資料。

gl.ELEMENT_ARRAY_BUFFER

用於元素索引的緩衝區。

使用 WebGL 2 上下文時,還可以使用以下值:

gl.COPY_READ_BUFFER

用於將一個緩衝區物件複製到另一個緩衝區的緩衝區。

gl.COPY_WRITE_BUFFER

用於將一個緩衝區物件複製到另一個緩衝區的緩衝區。

gl.TRANSFORM_FEEDBACK_BUFFER

用於變換反饋操作的緩衝區。

gl.UNIFORM_BUFFER

用於儲存 uniform 塊的緩衝區。

gl.PIXEL_PACK_BUFFER

用於畫素傳輸操作的緩衝區。

gl.PIXEL_UNPACK_BUFFER

用於畫素傳輸操作的緩衝區。

pname

一個指定要查詢資訊的 GLenum。可能的值

gl.BUFFER_SIZE

返回一個 GLint,表示緩衝區的大小(以位元組為單位)。

gl.BUFFER_USAGE

返回一個 GLenum,表示緩衝區的用法模式。以下值之一

  • gl.STATIC_DRAW
  • gl.DYNAMIC_DRAW
  • gl.STREAM_DRAW

使用 WebGL 2 上下文時,還可以使用以下值:

  • gl.STATIC_READ
  • gl.DYNAMIC_READ
  • gl.STREAM_READ
  • gl.STATIC_COPY
  • gl.DYNAMIC_COPY
  • gl.STREAM_COPY

返回值

取決於所請求的資訊(由 pname 指定)。可能是 GLintGLenum

示例

js
gl.getBufferParameter(gl.ARRAY_BUFFER, gl.BUFFER_SIZE);

規範

規範
WebGL 規範
# 5.14.5
WebGL 2.0 規範
# 3.7.3

瀏覽器相容性

另見