Partager via


fonction glVertexPointer

La fonction glVertexPointer définit un tableau de données de vertex.

Syntaxe

void WINAPI glVertexPointer(
         GLint   size,
         GLenum  type,
         GLsizei stride,
   const GLvoid  *pointer
);

Paramètres

size

Nombre de coordonnées par sommet. La valeur de la taille doit être 2, 3 ou 4.

type

Type de données de chaque coordonnée du tableau à l’aide des constantes symboliques suivantes : GL_SHORT, GL_INT, GL_FLOAT et GL_DOUBLE.

Foulée

Décalage d’octet entre les sommets consécutifs. Lorsque la foulée est égale à zéro, les sommets sont étroitement emballés dans le tableau.

Pointeur

Pointeur vers la première coordonnée du premier sommet du tableau.

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 .

Nom Signification
GL_INVALID_VALUE
la taille n’était pas 2, 3 ou 4.
GL_INVALID_ENUM
type n’était pas une valeur acceptée.
GL_INVALID_VALUE
stride ou count était négatif.

Notes

La fonction glVertexPointer spécifie l’emplacement et les données d’un tableau de coordonnées de vertex à utiliser lors du rendu. Le paramètre size spécifie le nombre de coordonnées par vertex. Le paramètre type spécifie le type de données de chaque coordonnée de vertex. Le paramètre stride détermine le décalage d’octet d’un sommet à l’autre, ce qui permet l’empaquetage des sommets et des attributs dans un tableau unique ou un stockage dans des tableaux distincts. Dans certaines implémentations, le stockage des sommets et des attributs dans un tableau unique peut être plus efficace que d’utiliser des tableaux distincts (voir glInterleavedArrays).

Un tableau de vertex est activé lorsque vous spécifiez la constante GL_VERTEX_ARRAY avec glEnableClientState. Lorsqu’il est activé, glDrawArrays, glDrawElements et glArrayElement utilisent le tableau de vertex. Par défaut, le tableau de vertex est désactivé.

Vous ne pouvez pas inclure glVertexPointer dans les listes d’affichage.

Lorsque vous spécifiez un tableau de vertex à l’aide de glVertexPointer, les valeurs de tous les paramètres du tableau de vertex de la fonction sont enregistrées dans un état côté client et les éléments de tableau statiques peuvent être mis en cache. Étant donné que les paramètres du tableau de vertex sont à l’état côté client, leurs valeurs ne sont pas enregistrées ou restaurées par glPushAttrib et glPopAttrib.

Bien qu’aucune erreur ne soit générée si vous appelez glVertexPointer dans des paires glBegin et glEnd , les résultats ne sont pas définis.

Les fonctions suivantes récupèrent des informations relatives à glVertexPointer :

glGet avec argument GL_VERTEX_ARRAY_SIZE

glGet avec argument GL_VERTEX_ARRAY_STRIDE

glGet avec argument GL_VERTEX_ARRAY_COUNT

glGet avec argument GL_VERTEX_ARRAY_TYPE

glGetPointerv avec argument GL_VERTEX_ARRAY_POINTER

glIsEnabled avec argument GL_VERTEX_ARRAY

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

glColorPointer

glDrawArrays

glEdgeFlagPointer

glEnableClientState

glGetPointerv

glGetString

glIndexPointer

glIsEnabled

glNormalPointer

glTexCoordPointer