WebGL2RenderingContext: bufferSubData() 方法

基线 广泛可用

此功能已得到良好建立,并在许多设备和浏览器版本上运行。它自 2021 年 9 月.

报告反馈

语法

WebGL2RenderingContext.bufferSubData()WebGL API 的一种方法,它更新缓冲区对象数据存储的子集。
bufferSubData(target, dstByteOffset, srcData)
bufferSubData(target, dstByteOffset, srcData, srcOffset)
bufferSubData(target, dstByteOffset, srcData, srcOffset, length)

js

参数

target

指定绑定点(目标)的 GLenum。可能的值

gl.ARRAY_BUFFER

包含顶点属性的缓冲区,例如顶点坐标、纹理坐标数据或顶点颜色数据。

gl.ELEMENT_ARRAY_BUFFER

用于元素索引的缓冲区。

gl.COPY_READ_BUFFER

用于将数据从一个缓冲区对象复制到另一个缓冲区对象的缓冲区。

gl.COPY_READ_BUFFER

gl.COPY_WRITE_BUFFER

gl.TRANSFORM_FEEDBACK_BUFFER

用于变换反馈操作的缓冲区。

gl.UNIFORM_BUFFER

用于存储统一块的缓冲区。

gl.PIXEL_PACK_BUFFER

用于像素传输操作的缓冲区。

gl.PIXEL_PACK_BUFFER

gl.PIXEL_UNPACK_BUFFER

dstByteOffset

指定数据替换开始位置的字节偏移量的 GLintptr

srcData 可选

将被复制到数据存储的 ArrayBufferSharedArrayBufferDataViewTypedArray

srcOffset 可选

指定开始读取缓冲区的位置的元素索引偏移量的 GLuint

length 可选

默认为 0 的 GLuint,其中 0 表示 bufferSubData 应该计算长度。

返回值

无 (undefined).

  • 异常
  • 如果数据写入到缓冲区末尾之外,或者如果 datanull,则会抛出 gl.INVALID_VALUE 错误。

规范

如果 target 不是允许的枚举之一,则会抛出 gl.INVALID_ENUM 错误。
规范
# 5.14.5

浏览器兼容性

WebGL 规范

另请参见