ANGLE_instanced_arrays

ANGLE_instanced_arrays розширення є частиною WebGL API і дозволяє малювати один і той же об'єкт або групи подібних об'єктів кілька разів, якщо вони поділяють однакові вершинні дані, лічильник примітиву і тип.

Розширення WebGL доступні за допомогою методаWebGLRenderingContext.getExtension() . Для отримання додаткової інформації див Using Extensions в WebGL tutorial.

Доступність: Це розширення доступне лише для WebGL1 контексті. В WebGL2, функціональність цього розширення доступна на WebGL2 контекст за замовчуванням і константи і методи доступні без суфіксу  "ANGLE".

Незважаючи на назву "ANGLE", це розширення працює на будь-якому пристрої, якщо його підтримує апаратне забезпечення, а не тільки на Windows, коли використовується бібліотека ANGLE.  "ANGLE" просто вказує, що це розширення було написано авторами бібліотеки ANGLE.

Константи

Це розширення виставляє одну нову константу, яку можна використовувати метод gl.getVertexAttrib() :

ext.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE
Повертає GLint опису частотного дільника, використовуваного для інтрадерного візуалізації при використанні в gl.getVertexAttrib() як параметр pname .

Methods

This extension exposes three new methods.

ext.drawArraysInstancedANGLE()

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

ext.drawElementsInstancedANGLE()

Behaves identically to gl.drawElements() except that multiple instances of the set of elements are executed and the instance advances between each set.

ext.vertexAttribDivisorANGLE()

Modifies the rate at which generic vertex attributes advance when rendering multiple instances of primitives with ext.drawArraysInstancedANGLE() and ext.drawElementsInstancedANGLE().

Examples

Enabling the extension:

var ext = gl.getExtension('ANGLE_instanced_arrays');

Specifications

Specification Status Comment
ANGLE_instanced_arrays
The definition of 'ANGLE_instanced_arrays' in that specification.
Recommendation Initial definition.

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
ANGLE_instanced_arraysChrome Full support YesEdge Full support 12Firefox Full support 33IE Full support 11Opera Full support YesSafari ? WebView Android Full support YesChrome Android Full support YesFirefox Android ? Opera Android Full support YesSafari iOS ? Samsung Internet Android Full support Yes
drawArraysInstancedANGLEChrome Full support YesEdge Full support 12Firefox Full support 33IE Full support 11Opera Full support YesSafari ? WebView Android Full support YesChrome Android Full support YesFirefox Android ? Opera Android Full support YesSafari iOS ? Samsung Internet Android Full support Yes
drawElementsInstancedANGLEChrome Full support YesEdge Full support 12Firefox Full support 33IE Full support 11Opera Full support YesSafari ? WebView Android Full support YesChrome Android Full support YesFirefox Android ? Opera Android Full support YesSafari iOS ? Samsung Internet Android Full support Yes
vertexAttribDivisorANGLEChrome Full support YesEdge Full support 12Firefox Full support 33IE Full support 11Opera Full support YesSafari ? WebView Android Full support YesChrome Android Full support YesFirefox Android ? Opera Android Full support YesSafari iOS ? Samsung Internet Android Full support Yes

Legend

Full support  
Full support
Compatibility unknown  
Compatibility unknown

See also