Spec-Zone.ru › Web APIs

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_STRIP
  • gl.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_PROGRAM null, выбрасывается ошибка 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

См. также

  • WebGLRenderingContext.drawArrays()
  • WebGL2RenderingContext.drawArraysInstanced()

© 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

Spec-Zone.ru

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