GlDrawArrays

From QB64 Phoenix Edition Wiki
Revision as of 18:52, 30 April 2022 by SMcNeill (talk | contribs) (Created page with "'''_glDrawArrays:''' render primitives from array data {{PageSyntax}} :: SUB _glDrawArrays (BYVAL mode AS _UNSIGNED LONG, BYVAL first AS LONG, BYVAL count AS LONG) :: void '''_glDrawArrays'''(GLenum {{Parameter|mode}}, GLint {{Parameter|first}}, GLsizei {{Parameter|count}}); ; mode : Specifies what kind of primitives to render. Symbolic constants {{KW|_GL_POINTS}}, {{KW|_GL_LINE_STRIP}}, {{KW|_GL_LINE_LOOP}}, {{KW|_GL_LINES}}, {{KW|_GL_LINE_STRIP_ADJACENCY}}, {{KW...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

_glDrawArrays: render primitives from array data


Syntax

SUB _glDrawArrays (BYVAL mode AS _UNSIGNED LONG, BYVAL first AS LONG, BYVAL count AS LONG)
void _glDrawArrays(GLenum mode, GLint first, GLsizei count);


mode
Specifies what kind of primitives to render. Symbolic constants Template:KW, Template:KW, Template:KW, Template:KW, Template:KW, Template:KW, Template:KW, Template:KW, Template:KW, Template:KW, Template:KW and Template:KW are accepted.
first
Specifies the starting index in the enabled arrays.
count
Specifies the number of indices to be rendered.


Description

_glDrawArrays specifies multiple geometric primitives with very few subroutine calls. Instead of calling a GL procedure to pass each individual vertex, normal, texture coordinate, edge flag, or color, you can prespecify separate arrays of vertices, normals, and colors and use them to construct a sequence of primitives with a single call to _glDrawArrays.

When _glDrawArrays is called, it uses count sequential elements from each enabled array to construct a sequence of geometric primitives, beginning with element first. mode specifies what kind of primitives are constructed and how the array elements construct those primitives.

Vertex attributes that are modified by _glDrawArrays have an unspecified value after _glDrawArrays returns. Attributes that aren't modified remain well defined.


Template:PageNotes

Template:KW, Template:KW, Template:KW and Template:KW are available only if the GL version is 3.2 or greater.


Template:PageErrors

Template:KW is generated if mode is not an accepted value.

Template:KW is generated if count is negative.

Template:KW is generated if a non-zero buffer object name is bound to an enabled array and the buffer object's data store is currently mapped.

Template:KW is generated if a geometry shader is active and mode is incompatible with the input primitive type of the geometry shader in the currently installed program object.


See also

SUB _GL Template:KW, Template:KW, Template:KW, Template:KW, Template:KW, Template:KW


Template:PageCopyright