ANGLE_instanced_arrays

Расширение ANGLE_instanced_arrays является частью API WebGL и позволяет рисовать один и тот же объект или группы похожих объектов несколько раз, если они используют одни и те же данные вершин, количество примитивов и тип.

Доступ к WebGL расширениям можно получить с помощью метода WebGLRenderingContext.getExtension() (en-US). Для получения дополнительной информации см. также в Использование расширений (en-US) в WebGL руководстве.

Примечание: Это расширение доступно только для WebGL1 контекстов. В WebGL2 (en-US), функциональность этого расширения доступна в контексте WebGL2 по умолчанию, а константы и методы доступны без суффикса " ANGLE ".

Несмотря на название "ANGLE", это расширение работает на любом устройстве, если аппаратное обеспечение поддерживает его, а не только на Windows при использовании библиотеки ANGLE . "ANGLE" просто указывает, что это расширение было написано авторами библиотеки ANGLE.

Константы

Это расширение предоставляет одну новую константу, которую можно использовать в gl.getVertexAttrib() (en-US) методе:

ext.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE

Возвращает GLint (en-US) , описывающий частотный делитель, используемый для упомянутого перевода в gl.getVertexAttrib() (en-US) в качестве параметра pname.

Методы

Это расширение предоставляет три новых метода:

ext.drawArraysInstancedANGLE() (en-US)

Behaves identically to gl.drawArrays() (en-US) except that multiple instances of the range of elements are executed, and the instance advances for each iteration.

ext.drawElementsInstancedANGLE() (en-US)

Ведёт себя идентично gl.drawElements() (en-US) за исключением того, что выполняется несколько экземпляров набора элементов и экземпляр перемещается между каждым набором

ext.vertexAttribDivisorANGLE() (en-US)

Изменяет скорость продвижения общих атрибутов вершин при визуализации нескольких экземпляров примитивов с помощью ext.drawArraysInstancedANGLE() (en-US) и ext.drawElementsInstancedANGLE() (en-US).

Примеры

Включение расширения:

js
var ext = gl.getExtension("ANGLE_instanced_arrays");

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

Specification
WebGL ANGLE_instanced_arrays Khronos Ratified Extension Specification

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

BCD tables only load in the browser

Смотрите также