funzione glColorPointer

La funzione glColorPointer definisce una matrice di colori.

Sintassi

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

Parametri

size

Numero di componenti per colore. Il valore deve essere 3 o 4.

type

Tipo di dati di ogni componente colore in una matrice di colori. I tipi di dati accettabili vengono specificati con le costanti seguenti: GL_BYTE, GL_UNSIGNED_BYTE, GL_SHORT, GL_UNSIGNED_SHORT, GL_INT, GL_UNSIGNED_INT, GL_FLOAT o GL_DOUBLE.

Passo

Offset di byte tra i colori consecutivi. Quando stride è zero, i colori sono strettamente compressi nella matrice.

Puntatore

Puntatore al primo componente del primo elemento colore in una matrice di colori.

Valore restituito

Questa funzione non restituisce un valore.

Codici di errore

I codici di errore seguenti possono essere recuperati dalla funzione glGetError .

Nome Significato
GL_INVALID_VALUE
dimensione non 3 o 4.
GL_INVALID_ENUM
il tipo non è un valore accettato.
GL_INVALID_VALUE
stride o count è negativo.

Commenti

La funzione glColorPointer specifica la posizione e il formato di dati di una matrice di componenti di colore da utilizzare durante il rendering. Il parametro stride determina l'offset dei byte da un colore all'altro, consentendo la compressione degli attributi dei vertici in una singola matrice o archiviazione in matrici separate. In alcune implementazioni, l'archiviazione degli attributi dei vertici in una singola matrice può essere più efficiente rispetto all'uso di matrici separate.

Abilitata la matrice di colori specificando la costante GL_COLOR_ARRAY con glEnableClientState. La chiamata a glArrayElement, glDrawElements o glDrawArrays usa la matrice di colori abilitata. Per impostazione predefinita, la matrice di colori è disabilitata. Le chiamate glColorPointer non possono essere immesse negli elenchi di visualizzazione.

Quando si specifica una matrice di colori usando glColorPointer, i valori di tutti i parametri della matrice di colori della funzione vengono salvati in uno stato lato client ed è possibile memorizzare nella cache gli elementi della matrice statica. Poiché i parametri della matrice di colori si trovano in uno stato lato client, glPushAttrib e glPopAttrib non salvano o ripristinano i valori dei parametri.

Sebbene la specifica della matrice di colori all'interno di glBegin e coppie glend non generi un errore, i risultati non sono definiti.

Le funzioni seguenti recuperano informazioni correlate alla funzione glColorPointer :

glIsEnabled con argomento GL_COLOR_ARRAY

glGet con argomento GL_COLOR_ARRAY_SIZE

glGet con argomento GL_COLOR_ARRAY_TYPE

glGet con argomento GL_COLOR_ARRAY_STRIDE

glGet con argomento GL_COLOR_ARRAY_COUNT

glGetPointerv con argomento GL_COLOR_ARRAY_POINTER

Requisiti

Requisito Valore
Client minimo supportato
Windows 2000 Professional [solo app desktop]
Server minimo supportato
Windows 2000 Server [solo app desktop]
Intestazione
Gl.h
Libreria
Opengl32.lib
DLL
Opengl32.dll

Vedi anche

glArrayElement

glBegin

glDrawArrays

glEdgeFlagPointer

glEnableClientState

glEnd

glGet

glGetString

glGetPointerv

glIndexPointer

glIsEnabled

glNormalPointer

glPopAttrib

glPushAttrib

glTexCoordPointer

glVertexPointer