Tiefenpuffer: Unterschied zwischen den Versionen
Flash (Diskussion | Beiträge) K (→Was macht der Tiefenpuffer?) |
K (→Wichtige Funktionen: glDepthMask) |
||
Zeile 11: | Zeile 11: | ||
Der Tiefentest kann durch die Befehle [[glEnable]] und [[glEnable|glDisable]] und dem Parameter GL_DEPTH_TEST aktiviert bzw. deaktiviert werden. | Der Tiefentest kann durch die Befehle [[glEnable]] und [[glEnable|glDisable]] und dem Parameter GL_DEPTH_TEST aktiviert bzw. deaktiviert werden. | ||
− | + | Die Art des Tiefentests kann durch die Funktion [[glDepthFunc]] verändert werden. | |
+ | |||
+ | Mit [[glDepthMask]] kann das Schreiben in den Tiefenpuffer deaktiviert und wieder aktiviert werden. | ||
Der Befehl [[glClear]] mit dem Parameter GL_DEPTH_BUFFER_BIT füllt den Tiefenpuffer mit dem durch die Funktion [[glClearDepth]] zuvor bestimmten Wert. | Der Befehl [[glClear]] mit dem Parameter GL_DEPTH_BUFFER_BIT füllt den Tiefenpuffer mit dem durch die Funktion [[glClearDepth]] zuvor bestimmten Wert. |
Aktuelle Version vom 27. November 2013, 22:59 Uhr
Was ist der Tiefenpuffer?
Der Tiefenpuffer ist eine Tabelle oder Matrix, welche für jedes Fragment im Framebuffer einen Tiefenwert speichern kann.
Was macht der Tiefenpuffer?
Mit Hilfe des Tiefenpuffers kann bestimmt werden, ob ein Fragment eines zu zeichnenden Objektes sichtbar ist oder nicht (siehe Tiefentest). Wenn ein neues Objekt gerendert wird, wird in der Regel überprüft, ob der Tiefenwert des neuen Fragments kleiner ist als der Tiefenwert im Tiefenpuffer. Ist dies der Fall, besteht das Fragment diesen so genannten Tiefentest. Das heißt die Informationen des Fragments werden in den Framebuffer übernommen.
Wichtige Funktionen
Der Tiefentest kann durch die Befehle glEnable und glDisable und dem Parameter GL_DEPTH_TEST aktiviert bzw. deaktiviert werden.
Die Art des Tiefentests kann durch die Funktion glDepthFunc verändert werden.
Mit glDepthMask kann das Schreiben in den Tiefenpuffer deaktiviert und wieder aktiviert werden.
Der Befehl glClear mit dem Parameter GL_DEPTH_BUFFER_BIT füllt den Tiefenpuffer mit dem durch die Funktion glClearDepth zuvor bestimmten Wert.