funzione glPopAttrib

Popa lo stack di attributi.

Sintassi

void WINAPI glPopAttrib(void);

Parametri

Questa funzione non ha parametri.

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_STACK_UNDERFLOW
La funzione è stata chiamata mentre lo stack di attributi era vuoto.
GL_INVALID_OPERATION
La funzione è stata chiamata tra una chiamata a glBegin e la chiamata corrispondente a glEnd.

Commenti

La funzione glPushAttrib accetta un argomento, una maschera che indica quali gruppi di variabili di stato salvare nello stack di attributi. Le costanti simboliche vengono usate per impostare bit nella maschera. Il parametro mask viene in genere costruito tramite ORche raggruppa diverse costanti. La maschera speciale GL_ALL_ATTRIB_BITS può essere usata per salvare tutti gli stati stackable.

La funzione glPopAttrib ripristina i valori delle variabili di stato salvate con l'ultimo comando glPushAttrib . Quelli non salvati vengono lasciati invariati.

Si tratta di un errore per eseguire il push degli attributi in uno stack completo o per visualizzare gli attributi di uno stack vuoto. In entrambi i casi, il flag di errore viene impostato e non viene apportata alcuna modifica allo stato OpenGL.

Inizialmente, lo stack di attributi è vuoto.

Non tutti i valori per lo stato OpenGL possono essere salvati nello stack di attributi. Ad esempio, il pacchetto pixel e lo stato di decomprimere, lo stato della modalità di rendering e selezionare e lo stato di feedback non possono essere salvati.

La profondità dello stack di attributi dipende dall'implementazione, ma deve essere almeno 16.

Le funzioni seguenti recuperano informazioni correlate a glPushAttrib e glPopAttrib:

glGet con argomento GL_ATTRIB_STACK_DEPTH

glGet con argomento GL_MAX_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

glBegin

glEnd

glGet

glGetClipPlane

glGetError

glGetLight

glGetMap

glGetMaterial

glGetPixelMap

glGetPolygonStipple

glGetString

glGetTexEnv

glGetTexGen

glGetTexImage

glGetTexLevelParameter

glGetTexParameter

glIsEnabled