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