WEBGL_multi_draw: метод multiDrawArraysWEBGL()
Ограниченная доступность
Эта функция не относится к Baseline, так как она не работает во всех широко используемых браузерах.
Метод WEBGL_multi_draw.multiDrawArraysWEBGL() API WebGL рендерит несколько примитивов из данных массива. Он идентичен множественным вызовам метода gl.drawArrays().
Синтаксис
multiDrawArraysWEBGL(mode,
firstsList, firstsOffset,
countsList, countsOffset,
drawCount);
Параметры
mode-
Тип
GLenum, определяющий тип примитива для рендеринга. Возможные значения:-
gl.POINTS: Рисует одну точку. -
gl.LINE_STRIP: Рисует прямую линию до следующей вершины. -
gl.LINE_LOOP: Рисует прямую линию до следующей вершины и соединяет последнюю вершину с первой. -
gl.LINES: Рисует линию между парой вершин. gl.TRIANGLE_STRIPgl.TRIANGLE_FAN-
gl.TRIANGLES: Рисует треугольник для группы из трёх вершин.
-
firstsList-
Массив
Int32ArrayилиArray(элементы типаGLint) , содержащий список начальных индексов массивов векторов точек. firstsOffset-
GLuint, определяющий начальную позицию в массивеfirstsLists. countsList-
Int32ArrayилиArray(элементы типаGLsizei) , содержащий список количества индексов для рендеринга. countsOffset-
GLuint, определяющий начальную позицию в массивеcountsList. drawCount-
GLsizei, определяющий количество экземпляров диапазона элементов для выполнения.
Возвращаемое значение
None.
Исключения
- Если
modeне является одним из допустимых значений, выбрасывается ошибкаgl.INVALID_ENUM. - Если
drawCountили элементы вfirstsListиcountsListотрицательные, выбрасывается ошибкаgl.INVALID_VALUE. - Если
gl.CURRENT_PROGRAMnull, выбрасывается ошибкаgl.INVALID_OPERATION.
Примеры
const firsts = new Int32Array(/* … */); const counts = new Int32Array(/* … */); ext.multiDrawArraysWEBGL(gl.TRIANGLES, firsts, 0, counts, 0, firsts.length);
Спецификации
| Спецификация |
|---|
| Спецификация расширения WebGL WEBGL_multi_draw |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
multiDrawArraysWEBGL |
86 | 86 | Нет | 72 | 15 | 86 | Нет | Нет | 15 | 14.0 | 86 |
См. также
© 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/WEBGL_multi_draw/multiDrawArraysWEBGL