Spec-Zone.ru › Web APIs

WebGL2RenderingContext: метод bufferSubData()

Базовая Широко поддерживается *

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузера. Она доступна в браузерах с сентября 2021 года.

* Некоторые части этой функции могут иметь различный уровень поддержки.

  • Узнать больше
  • Полная совместимость
  • Отправить отзыв

Примечание: Эта функция доступна в Web Workers.

Метод WebGL2RenderingContext.bufferSubData() API WebGL обновляет подмножество данных буферного объекта.

Синтаксис

bufferSubData(target, dstByteOffset, srcData)
bufferSubData(target, dstByteOffset, srcData, srcOffset)
bufferSubData(target, dstByteOffset, srcData, srcOffset, length)

Параметры

target

GLenum указывающий точку привязки (target). Возможные значения:

gl.ARRAY_BUFFER

Буфер, содержащий атрибуты вершин, такие как координаты вершин, данные координат текстур или цвет вершин.

gl.ELEMENT_ARRAY_BUFFER

Буфер, используемый для индексов элементов.

gl.COPY_READ_BUFFER

Буфер для копирования из одного буферного объекта в другой.

gl.COPY_WRITE_BUFFER

Буфер для копирования из одного буферного объекта в другой.

gl.TRANSFORM_FEEDBACK_BUFFER

Буфер для операций обратной связи преобразования.

gl.UNIFORM_BUFFER

Буфер, используемый для хранения блоков униформ.

gl.PIXEL_PACK_BUFFER

Буфер, используемый для операций передачи пикселей.

gl.PIXEL_UNPACK_BUFFER

Буфер, используемый для операций передачи пикселей.

dstByteOffset

GLintptr, указывающий смещение в байтах, с которого начнется замена данных.

srcData Необязательно

ArrayBuffer, SharedArrayBuffer, DataView или TypedArray, которые будут скопированы в хранилище данных.

srcOffset Необязательно

GLuint, указывающий смещение индекса элемента, с которого начать чтение буфера.

length Необязательно

GLuint по умолчанию равное 0, где 0 означает, что bufferSubData должен вычислить длину.

Возвращаемое значение

None (undefined).

Исключения

  • Ошибка gl.INVALID_VALUE возникает, если данные будут записаны за пределами буфера или если data имеет значение null.
  • Ошибка gl.INVALID_ENUM возникает, если target не является одним из разрешенных перечислений.

Спецификации

Спецификация
Спецификация WebGL
# 5.14.5

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на IOS Samsung Internet WebView Android
bufferSubData 56 79 51 43 15 58 51 43 15 7.0 58
srcData_param_accepts_SharedArrayBuffer 60 79 79 47 Нет 60 79 44 Нет 8.0 60

См. также

  • WebGLRenderingContext.bufferSubData()
  • WebGLRenderingContext.createBuffer()
  • WebGLRenderingContext.bufferData()
  • Другие буферы: WebGLFramebuffer, WebGLRenderbuffer

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WebGL2RenderingContext/bufferSubData

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API