Partager via


fonction glDrawArrays

La fonction glDrawArrays spécifie plusieurs primitives à restituer.

Syntaxe

void WINAPI glDrawArrays(
   GLenum  mode,
   GLint   first,
   GLsizei count
);

Paramètres

mode

Type de primitives à restituer. Les constantes suivantes spécifient des types de primitives acceptables : GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_QUAD_STRIP, GL_QUADS et GL_POLYGON.

first

Index de départ dans les tableaux activés.

count

Nombre d’index à afficher.

Valeur renvoyée

Cette fonction ne retourne pas de valeur.

Codes d’erreur

Les codes d’erreur suivants peuvent être récupérés par la fonction glGetError .

Name Signification
GL_INVALID_VALUE
le nombre était négatif.
GL_INVALID_ENUM
mode n’était pas une valeur acceptée.
GL_INVALID_OPERATION
La fonction a été appelée entre un appel à glBegin et l’appel à glEnd correspondant.

Notes

Avec glDrawArrays, vous pouvez spécifier plusieurs primitives géométriques à restituer. Au lieu d’appeler des fonctions OpenGL distinctes pour transmettre chaque vertex, normal ou couleur, vous pouvez spécifier des tableaux distincts de sommets, de normales et de couleurs pour définir une séquence de primitives (toutes le même genre) avec un seul appel à glDrawArrays.

Lorsque vous appelez glDrawArrays, le nombre d’éléments séquentiels de chaque tableau activé est utilisé pour construire une séquence de primitives géométriques, en commençant par le premier élément. Le paramètre mode spécifie le type de primitive à construire et comment utiliser les éléments tableaux pour construire les primitives.

Une fois glDrawArrays retourné, les valeurs des attributs de vertex qui sont modifiés par glDrawArrays ne sont pas définies. Par exemple, si GL_COLOR_ARRAY est activé, la valeur de la couleur actuelle n’est pas définie après le retour de glDrawArrays . Les attributs non modifiés par glDrawArrays restent définis. Lorsque GL_VERTEX_ARRAY n’est pas activé, aucune primitive géométrique n’est générée, mais les attributs correspondant aux tableaux activés sont modifiés.

Vous pouvez inclure glDrawArrays dans les listes d’affichage. Lorsque vous incluez glDrawArrays dans une liste d’affichage, les données de tableau nécessaires, déterminées par les pointeurs du tableau et les enables, sont générées et entrées dans la liste d’affichage. Les valeurs des pointeurs et des activations de tableau sont déterminées lors de la création de listes d’affichage.

Vous pouvez lire des données de tableau statiques à tout moment. Si des éléments de tableau statiques sont modifiés et que le tableau n’est pas spécifié à nouveau, les résultats des appels suivants à glDrawArrays ne sont pas définis.

Bien qu’aucune erreur ne soit générée lorsque vous spécifiez plusieurs fois un tableau dans des paires glBegin et glend , les résultats ne sont pas définis.

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge
Windows 2000 Server [applications de bureau uniquement]
En-tête
Gl.h
Bibliothèque
Opengl32.lib
DLL
Opengl32.dll

Voir aussi

glArrayElement

glBegin

glColorPointer

glEdgeFlagPointer

glEnd

glGetPointerv

glGetString

glIndexPointer

glNormalPointer

glTexCoordPointer

glVertexPointer