'\" t .\" Title: glMultiDrawElements .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets v1.79.2 .\" Date: 10/20/2024 .\" Manual: [FIXME: manual] .\" Source: [FIXME: source] .\" Language: English .\" .TH "GLMULTIDRAWELEMENTS" "3G" "10/20/2024" "[FIXME: source]" "[FIXME: manual]" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" glMultiDrawElements \- render multiple sets of primitives by specifying indices of array data elements .SH "C SPECIFICATION" .HP \w'void\ glMultiDrawElements('u .BI "void glMultiDrawElements(GLenum\ " "mode" ", const\ GLsizei\ *\ " "count" ", GLenum\ " "type" ", const\ void\ *\ const\ *\ " "indices" ", GLsizei\ " "drawcount" ");" .SH "PARAMETERS" .PP \fImode\fR .RS 4 Specifies what kind of primitives to render\&. Symbolic constants \fBGL_POINTS\fR, \fBGL_LINE_STRIP\fR, \fBGL_LINE_LOOP\fR, \fBGL_LINES\fR, \fBGL_LINE_STRIP_ADJACENCY\fR, \fBGL_LINES_ADJACENCY\fR, \fBGL_TRIANGLE_STRIP\fR, \fBGL_TRIANGLE_FAN\fR, \fBGL_TRIANGLES\fR, \fBGL_TRIANGLE_STRIP_ADJACENCY\fR, \fBGL_TRIANGLES_ADJACENCY\fR and \fBGL_PATCHES\fR are accepted\&. .RE .PP \fIcount\fR .RS 4 Points to an array of the elements counts\&. .RE .PP \fItype\fR .RS 4 Specifies the type of the values in \fIindices\fR\&. Must be one of \fBGL_UNSIGNED_BYTE\fR, \fBGL_UNSIGNED_SHORT\fR, or \fBGL_UNSIGNED_INT\fR\&. .RE .PP \fIindices\fR .RS 4 Specifies a pointer to the location where the indices are stored\&. .RE .PP \fIdrawcount\fR .RS 4 Specifies the size of the \fIcount\fR and \fIindices\fR arrays\&. .RE .SH "DESCRIPTION" .PP \fBglMultiDrawElements\fR specifies multiple sets of geometric primitives with very few subroutine calls\&. Instead of calling a GL function to pass each individual vertex, normal, texture coordinate, edge flag, or color, you can prespecify separate arrays of vertices, normals, and so on, and use them to construct a sequence of primitives with a single call to \fBglMultiDrawElements\fR\&. .PP \fBglMultiDrawElements\fR is identical in operation to \fBglDrawElements\fR() except that \fIdrawcount\fR separate lists of elements are specified\&. .PP Vertex attributes that are modified by \fBglMultiDrawElements\fR have an unspecified value after \fBglMultiDrawElements\fR returns\&. Attributes that aren\*(Aqt modified maintain their previous values\&. .SH "NOTES" .PP \fBGL_LINE_STRIP_ADJACENCY\fR, \fBGL_LINES_ADJACENCY\fR, \fBGL_TRIANGLE_STRIP_ADJACENCY\fR and \fBGL_TRIANGLES_ADJACENCY\fR are available only if the GL version is 3\&.2 or greater\&. .SH "ERRORS" .PP \fBGL_INVALID_ENUM\fR is generated if \fImode\fR is not an accepted value\&. .PP \fBGL_INVALID_VALUE\fR is generated if \fIdrawcount\fR is negative\&. .PP \fBGL_INVALID_OPERATION\fR is generated if a non\-zero buffer object name is bound to an enabled array or the element array and the buffer object\*(Aqs data store is currently mapped\&. .SH "VERSION SUPPORT" .TS allbox tab(:); lB cB s s s s s s s s s s s lB cB cB cB cB cB cB cB cB cB cB cB cB. T{ T}:T{ \fBOpenGL Version\fR T} T{ \fBFunction / Feature Name\fR T}:T{ \fB2\&.0\fR T}:T{ \fB2\&.1\fR T}:T{ \fB3\&.0\fR T}:T{ \fB3\&.1\fR T}:T{ \fB3\&.2\fR T}:T{ \fB3\&.3\fR T}:T{ \fB4\&.0\fR T}:T{ \fB4\&.1\fR T}:T{ \fB4\&.2\fR T}:T{ \fB4\&.3\fR T}:T{ \fB4\&.4\fR T}:T{ \fB4\&.5\fR T} .T& l c c c c c c c c c c c c. T{ \fBglMultiDrawElements\fR T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T} .TE .sp 1 .SH "SEE ALSO" .PP \fBglDrawArrays\fR(), \fBglDrawRangeElements\fR() .SH "COPYRIGHT" .PP Copyright \(co 1991\-2006 Silicon Graphics, Inc\&. Copyright \(co 2010\-2014 Khronos Group\&. This document is licensed under the SGI Free Software B License\&. For details, see \m[blue]\fBhttps://khronos\&.org/registry/OpenGL\-Refpages/LICENSES/LicenseRef\-FreeB\&.txt\fR\m[]\&. .SH "COPYRIGHT" .br Copyright \(co 2010-2014 Khronos Group .br