Spec-Zone.ru › Web APIs

WebGLRenderingContext: метод drawArrays()

Базовая реализация Широко доступная

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

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

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

Метод WebGLRenderingContext.drawArrays() API WebGL отображает примитивы из данных массива.

Синтаксис

drawArrays(mode, first, count)

Параметры

mode

Тип GLenum, определяющий примитив для отображения. Возможные значения:

  • gl.POINTS: Отображает одну точку.
  • gl.LINE_STRIP: Отображает прямую линию до следующей вершины.
  • gl.LINE_LOOP: Отображает прямую линию до следующей вершины и соединяет последнюю вершину с первой.
  • gl.LINES: Отображает линию между парой вершин.
  • gl.TRIANGLE_STRIP
  • gl.TRIANGLE_FAN
  • gl.TRIANGLES: Отображает треугольник для группы из трёх вершин.

Примечание: Если mode равно POINTS, может потребоваться установить gl_PointSize для корректного отображения drawArrays, так как его значение неизвестно, если оно не задано явно. Некоторые графические процессоры устанавливают его значение по умолчанию как 1.0.

first

GLint индекс начала массива векторов.

count

GLsizei количество индексов для отображения.

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

Ничего (undefined).

Исключения

  • Если mode не является допустимым значением, выбрасывается ошибка gl.INVALID_ENUM.
  • Если first или count отрицательны, выбрасывается ошибка gl.INVALID_VALUE.
  • Если gl.CURRENT_PROGRAM равно null, выбрасывается ошибка gl.INVALID_OPERATION.

Примеры

gl.drawArrays(gl.POINTS, 0, 8);

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

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

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

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на iOS Samsung Internet WebView Android
drawArrays 9 12 4 12 5.1 25 4 12 8 1.5 4.4.3

См. также

  • WebGLRenderingContext.drawElements()
  • ext.drawArraysInstancedANGLE()
  • ext.drawElementsInstancedANGLE()
  • ext.vertexAttribDivisorANGLE()
  • WebGL2RenderingContext.drawArraysInstanced()
  • WebGL2RenderingContext.drawElementsInstanced()
  • WebGL2RenderingContext.vertexAttribDivisor()
  • WEBGL_multi_draw.multiDrawArraysWEBGL()

© 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/WebGLRenderingContext/drawArrays

Spec-Zone.ru

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