web api instance method
WebGL2RenderingContext: drawElementsInstanced() method
Available in workers
The WebGL2RenderingContext.drawElementsInstanced() method
of the WebGL 2 API renders primitives from
array data like the gl.drawElements() method. In addition, it can execute multiple instances of a set
of elements.
[!NOTE] When using
WebGL 1, theANGLE_instanced_arraysextension can provide this method, too.
Syntax
drawElementsInstanced(mode, count, type, offset, instanceCount)
Parameters
-
mode- : A
GLenumspecifying 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_STRIPgl.TRIANGLE_FANgl.TRIANGLES: Draws a triangle for a group of three vertices.
- : A
-
count- : A
GLsizeispecifying the number of elements to be rendered.
- : A
-
type- : A
GLenumspecifying the type of the values in the element array buffer. Possible values are:gl.UNSIGNED_BYTEgl.UNSIGNED_SHORTgl.UNSIGNED_INTWhen using theOES_element_index_uintextension.
- : A
-
offset- : A
GLintptrspecifying an offset in the element array buffer. Must be a valid multiple of the size of the giventype.
- : A
-
instanceCount- : A
GLsizeispecifying the number of instances of the set of elements to execute.
- : A
Return value
None (undefined).
Exceptions
- If
modeis not one of the accepted values, agl.INVALID_ENUMerror is thrown. - If
offsetis a valid multiple of the size of the given type, agl.INVALID_OPERATIONerror is thrown. - If
countorinstanceCountare negative, agl.INVALID_VALUEerror is thrown.
Examples
gl.drawElementsInstanced(gl.POINTS, 2, gl.UNSIGNED_SHORT, 0, 4);
Specifications
SpecificationsStandards references are available on the canonical MDN page.
Browser compatibility
Browser compatibilityCompatibility data is available on the canonical MDN page.