WebGL2RenderingContext: bufferSubData() 方法
Baseline 广泛可用 *
注意:此功能在 Web Workers 中可用。
WebGL2RenderingContext.bufferSubData() 方法是 WebGL API 的一部分,用于更新缓冲区对象数据存储的子集。
语法
js
bufferSubData(target, dstByteOffset, srcData)
bufferSubData(target, dstByteOffset, srcData, srcOffset)
bufferSubData(target, dstByteOffset, srcData, srcOffset, length)
参数
目标-
一个
GLenum,指定绑定点(目标)。可能的值gl.ARRAY_BUFFER-
包含顶点属性的缓冲区,例如顶点坐标、纹理坐标数据或顶点颜色数据。
gl.ELEMENT_ARRAY_BUFFER-
用于元素索引的缓冲区。
gl.COPY_READ_BUFFER-
用于将一个缓冲区对象复制到另一个缓冲区的缓冲区。
gl.COPY_WRITE_BUFFER-
用于将一个缓冲区对象复制到另一个缓冲区的缓冲区。
gl.TRANSFORM_FEEDBACK_BUFFER-
用于变换反馈操作的缓冲区。
gl.UNIFORM_BUFFER-
用于存储 uniform 块的缓冲区。
gl.PIXEL_PACK_BUFFER-
用于像素传输操作的缓冲区。
gl.PIXEL_UNPACK_BUFFER-
用于像素传输操作的缓冲区。
dstByteOffset-
一个
GLintptr,指定数据替换开始的字节偏移量。 srcData可选-
一个
TypedArray或DataView,它视图化一个ArrayBuffer或SharedArrayBuffer,这些数据将被复制到数据存储中。 srcOffset可选-
一个
GLuint,指定开始读取缓冲区的元素索引偏移量。 length可选-
一个
GLuint,默认为 0,其中 0 表示bufferSubData应自行计算长度。
返回值
无(undefined)。
异常
- 如果数据写入超出缓冲区末尾,或者
data为null,则会抛出gl.INVALID_VALUE错误。 - 如果
target不是允许的枚举值之一,则会抛出gl.INVALID_ENUM错误。
规范
| 规范 |
|---|
| WebGL 规范 # 5.14.5 |
浏览器兼容性
加载中…