--- title: ANGLE_instanced_arrays slug: Web/API/ANGLE_instanced_arrays translation_of: Web/API/ANGLE_instanced_arrays ---
{{APIRef("WebGL")}}

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

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

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

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

Константи

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

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

Methods

This extension exposes three new methods.

{{domxref("ANGLE_instanced_arrays.drawArraysInstancedANGLE()", "ext.drawArraysInstancedANGLE()")}}

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

{{domxref("ANGLE_instanced_arrays.drawElementsInstancedANGLE()", "ext.drawElementsInstancedANGLE()")}}

Behaves identically to {{domxref("WebGLRenderingContext.drawElements()", "gl.drawElements()")}} except that multiple instances of the set of elements are executed and the instance advances between each set.

{{domxref("ANGLE_instanced_arrays.vertexAttribDivisorANGLE()", "ext.vertexAttribDivisorANGLE()")}}

Modifies the rate at which generic vertex attributes advance when rendering multiple instances of primitives with {{domxref("ANGLE_instanced_arrays.drawArraysInstancedANGLE()", "ext.drawArraysInstancedANGLE()")}} and {{domxref("ANGLE_instanced_arrays.drawElementsInstancedANGLE()", "ext.drawElementsInstancedANGLE()")}}.

Examples

Enabling the extension:

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

Specifications

Specification Status Comment
{{SpecName('ANGLE_instanced_arrays', '', 'ANGLE_instanced_arrays')}} {{Spec2('ANGLE_instanced_arrays')}} Initial definition.

Browser compatibility

{{Compat("api.ANGLE_instanced_arrays")}}

See also