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 |
См. также
© 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