funzione glPushClientAttrib

Le funzioni glPushClientAttrib e glPopClientAttrib salvano e ripristinano i gruppi di variabili di stato client nello stack di attributi client.

Sintassi

void WINAPI glPushClientAttrib(
   GLbitfield mask
);

Parametri

Maschera

Maschera che indica gli attributi da salvare. Di seguito sono riportate le costanti di maschera simbolica e i relativi stati client OpenGL associati.

Valore Significato
GL_CLIENT_PIXEL_STORE_BIT
Attributi della modalità di archiviazione pixel.
GL_CLIENT_VERTEX_ARRAY_BIT
Attributi della matrice vertice.
GL_CLIENT_ALL_ATTRIB_BITs
tutti gli attributi dello stato client impilabili.

Valore restituito

Questa funzione non restituisce un valore.

Codici di errore

Il codice di errore seguente può essere recuperato dalla funzione glGetError .

Nome Significato
GL_STACK_OVERFLOW
La funzione è stata chiamata mentre lo stack di attributi client era pieno.

Commenti

La funzione glPushClientAttrib usa il parametro mask per determinare quali gruppi di variabili di stato client vengono salvati nello stack di attributi client. È possibile usare l'operatore OR bit per bit per unire le costanti simboliche accettate per impostare bit e costruire una maschera.

La funzione glPopClientAttrib ripristina i valori delle variabili di stato client salvate per ultimo con glPushclientAttrib. Le variabili dello stato client non salvate in precedenza vengono lasciate invariate. Il push di attributi in uno stack di attributi client completo o l'estrazione di attributi da uno stack vuoto imposta un flag di errore e non viene apportata alcuna altra modifica allo stato OpenGL. Per impostazione predefinita, lo stack di attributi client è vuoto.

Alcuni valori di stato client OpenGL non possono essere salvati nello stack di attributi client. Ad esempio, non è possibile salvare gli stati di selezione o feedback nello stack dell'attributo client. La profondità dello stack di attributi client è almeno 16.

Le funzioni glPushclientAttrib e glPopClientAttrib non vengono compilate in elenchi di visualizzazione, ma vengono eseguite immediatamente.

Le funzioni glPushClientAttrib e glPopClientAttrib possono solo eseguire il push e le modalità di archiviazione dei pixel pop e gli stati client dell'array dei vertici. È necessario usare glPushAttrib e glPopAttrib per eseguire il push e gli stati pop mantenuti nel server.

Nota

Le funzioni glPushClientAttrib e glPopClientAttrib sono disponibili solo in OpenGL versione 1.1 o successiva.

Le funzioni seguenti recuperano informazioni correlate a glPushClientAttrib e glPopClientAttrib:

glGet con argomento GL_CLIENT_ATTRIB_STACK_DEPTH

glGet con argomento GL_MAX_CLIENT_ATTRIB_STACK_DEPTH

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

glColorPointer

glDisableClientState

glEdgeFlagPointer

glEnableClientState

glGet

glGetError

glIndexPointer

glNormalPointer

glNewList

glPixelStore

glPushAttrib

glTexCoordPointer

glVertexPointer