funzione glVertexPointer
La funzione glVertexPointer definisce una matrice di dati dei vertici.
Sintassi
void WINAPI glVertexPointer(
GLint size,
GLenum type,
GLsizei stride,
const GLvoid *pointer
);
Parametri
-
size
-
Numero di coordinate per vertice. Il valore di dimensione deve essere 2, 3 o 4.
-
type
-
Tipo di dati di ogni coordinata nella matrice usando le costanti simboliche seguenti: GL_SHORT, GL_INT, GL_FLOAT e GL_DOUBLE.
-
Passo
-
Offset di byte tra vertici consecutivi. Quando stride è zero, i vertici sono strettamente compressi nella matrice.
-
Puntatore
-
Puntatore alla prima coordinata del primo vertice della matrice.
Valore restituito
Questa funzione non restituisce un valore.
Codici di errore
I codici di errore seguenti possono essere recuperati dalla funzione glGetError .
Nome | Significato |
---|---|
|
le dimensioni non erano 2, 3 o 4. |
|
tipo non è stato accettato. |
|
stride o conteggio è negativo. |
Commenti
La funzione glVertexPointer specifica la posizione e i dati di una matrice di coordinate del vertice da usare durante il rendering. Il parametro dimensioni specifica il numero di coordinate per vertice. Il parametro di tipo specifica il tipo di dati di ogni coordinata del vertice. Il parametro stride determina l'offset di byte da un vertice al successivo, consentendo la compressione di vertici e attributi in una singola matrice o archiviazione in matrici separate. In alcune implementazioni, l'archiviazione dei vertici e degli attributi in una singola matrice può essere più efficiente rispetto all'uso di matrici separate (vedere glInterleavedArrays).
Una matrice di vertici è abilitata quando si specifica la costante GL_VERTEX_ARRAY con glEnableClientState. Se abilitato, glDrawArrays, glDrawElements e glArrayElement usano la matrice vertex. Per impostazione predefinita, la matrice del vertice è disabilitata.
Non è possibile includere glVertexPointer negli elenchi di visualizzazione.
Quando si specifica una matrice di vertici usando glVertexPointer, i valori di tutti i parametri della matrice vertex della funzione vengono salvati in uno stato lato client e gli elementi della matrice statica possono essere memorizzati nella cache. Poiché i parametri della matrice dei vertici sono lo stato lato client, i valori non vengono salvati o ripristinati da glPushAttrib e glPopAttrib.
Anche se non viene generato alcun errore se si chiama glVertexPointer all'interno di glBegin e glEnd , i risultati non sono definiti.
Le funzioni seguenti recuperano informazioni correlate a glVertexPointer:
glGet con argomento GL_VERTEX_ARRAY_SIZE
glGet con argomento GL_VERTEX_ARRAY_STRIDE
glGet con argomento GL_VERTEX_ARRAY_COUNT
glGet con argomento GL_VERTEX_ARRAY_TYPE
glGetPointerv con argomento GL_VERTEX_ARRAY_POINTER
glIsEnabled con argomento GL_VERTEX_ARRAY
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows 2000 Professional [solo app desktop] |
Server minimo supportato |
Windows 2000 Server [solo app desktop] |
Intestazione |
|
Libreria |
|
DLL |
|