WebGL2RenderingContext: drawArraysInstanced() method
{{APIRef("WebGL")}}
{{AvailableInWorkers}}
The WebGL2RenderingContext.drawArraysInstanced()
method
of the WebGL 2 API renders primitives from
array data like the {{domxref("WebGLRenderingContext.drawArrays()", "gl.drawArrays()")}}
method. In addition, it can execute multiple instances of the range of elements.
[!NOTE] When using
{{domxref("WebGLRenderingContext", "WebGL 1", "", 1)}}
, the{{domxref("ANGLE_instanced_arrays")}}
extension can provide this method, too.
Syntax
drawArraysInstanced(mode, first, count, instanceCount)
Parameters
-
mode
-
: A
{{domxref("WebGL_API/Types", "GLenum")}}
specifying the type primitive to render. Possible values are:gl.POINTS
: Draws a single dot.gl.LINE_STRIP
: Draws a straight line to the next vertex.gl.LINE_LOOP
: Draws a straight line to the next vertex, and connects the last vertex back to the first.gl.LINES
: Draws a line between a pair of vertices.gl.TRIANGLE_STRIP
gl.TRIANGLE_FAN
gl.TRIANGLES
: Draws a triangle for a group of three vertices.
-
-
first
- : A
{{domxref("WebGL_API/Types", "GLint")}}
specifying the starting index in the array of vector points.
- : A
-
count
- : A
{{domxref("WebGL_API/Types", "GLsizei")}}
specifying the number of indices to be rendered.
- : A
-
instanceCount
- : A
{{domxref("WebGL_API/Types", "GLsizei")}}
specifying the number of instances of the range of elements to execute.
- : A
Return value
None ({{jsxref("undefined")}}
).
Examples
gl.drawArraysInstanced(gl.POINTS, 0, 8, 4);
Specifications
{{Specifications}}
Browser compatibility
{{Compat}}
See also
{{domxref("ANGLE_instanced_arrays.drawArraysInstancedANGLE()")}}
{{domxref("WEBGL_multi_draw.multiDrawArraysInstancedWEBGL()")}}