Constructor
new Buffer(data, optionsnullable)
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
data |
TypedArray | ArrayBuffer | Данные для передачи в видеокарту |
|
options |
BufferBindOptions |
<nullable> |
Параметры передачи буфера в видеокарту, могут быть переопределены из BufferChannel |
Members
byteLength :Number
Размер данных в буфере в байтах
drawType :Buffer.StaticDraw|Buffer.DynamicDraw
Указывает, как часто данные буфера будут изменяться.
type :Buffer.ArrayBuffer|Buffer.ElementArrayBuffer
Тип буфера. Буфер может использоваться для передачи массива данных, так и для передачи индексов элементов из данных.
Methods
bind(gl, locationnullable, optionsnullable)
Связывает данные с контекстом WebGL.
В случае Buffer.ArrayBuffer связывает с атрибутами шейдера. А в случае Buffer.ElementArrayBuffer связывает массив индексов.
Если используется первый раз, добавляет данные в контекст WebGL.
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
gl |
WebGLRenderingContext | ||
location |
Number |
<nullable> |
Положение аттрибута для связывания данных с переменными в шейдере |
options |
BufferBindOptions |
<nullable> |
Параметры передаваемые в функцию vertexAttribPointer, если их нет, то используются параметры конкретного буфера. Параметры должны быть переданы все. |
remove()
Удаляет данные из контекста WebGL.
subData(gl, index, data)
Заменяет часть буфера новыми данными и отправляет их в видеокарту
Parameters:
Name | Type | Description |
---|---|---|
gl |
WebGLRenderingContext | |
index |
Number | Индекс, с которого начать замену |
data |
TypedArray | Новые данные |