Dieser Test wird beim
"Blending"
des
Zeichnens durchgeführt.
Die
Lade-Objekte
in screenAV werden in einen
3D-Raum
gezeichnet. Um festzustellen, ob sich ein
Lade-Objekt näher an der
Kameraposition befindet als die, die schon gezeichnet wurden,
wird der Z-Puffer und der Z-Test benötigt.
Den "Z-buffer" kann man sich wie ein
Bitmap Bild
vorstellen, nur das er anstatt der Farbinformation eine Tiefeninformation entählt.
Für jeden Pixel des
"Framebuffer"īs,
speichert der Z-Puffer einen Wert, wie Tief im
3D-Raum
das Pixel des "Framebuffer"īs ist.
Diese Tiefeninformation wird von
Lade-Objekten gesetzt, wenn sie in den
"Framebuffer" gezeichnet werden.
Danach können diese Tiefeninformation genutzt werden, um
Lade-Objekte abhängig von den Tiefenwerten zu zeichnen oder nicht ("Depth-testing" bzw. Z-Test).
In screenAV kann diese Funktion im "Set-parameters"-Befehl auf der
"Depth"-Seite
eingestellt werden.
Wichtig:
 |
Die Tiefenwerte sind NICHT mit den Werten der
Objekt-Koordinaten zu vergleichen!
Die Tiefeninformation des Z-Puffers ändern sich mit der Kameraposition, und mit den
Einstellungen der "NearPlane" und "FarPlane". Sehen Sie bei Prinzipien - 3D-Raum. |
Dieser Test wird beim
"Blending"
des
Zeichnens durchgeführt.
Beim Z-Test werden die eigenen Z-Werte mit dem des Z-Puffers verglichen.
Je nach Test wird dann das Pixel gezeichnet oder nicht. Wird gezeichnet, so kann dabei der
Z-Puffer auf den neuen Wert gesetzt werden.
Beispiel:
Zuerst wird eine Flache Scheibe gezeichnet. Diese beeinflusst den Z-Puffer.
Danach wird die Kugel gezeichnet.
Die Einstellungen in screenAV
"Less", "Greater" und
"Always"
werden im "Set-parameters"-Befehl
auf der
"Depth"-Seite
durchgeführt.
"Less" (Weniger)
|
"Greater" (Größer)
|
"Always" (Immer)
|
|
|
|
"LESS" (Kleiner)
Die Kugel wird gezeichnet wenn die eigenen Tiefenwerte
kleiner sind
als die Tiefenwerte im Z-Puffer.
(Wenn keine Hindernisse zwischen Kugel und Kameraposition sind.)
Dies ist meistens bei verformten
Lade-Objekten die sinnvollste Einstellungen.
Bei verformten Lade-Objekten mit Transparenzen kann es jedoch wieder zu Grafikfehlern kommen.
"GREATER" (Größer)
Die Kugel wird gezeichnet wenn die eigenen Tiefenwerte größer sind
als die Tiefenwerte im Z-Puffer.
"ALWAYS" (Immer) (Voreinstellung)
Die Kugel wird unabhängig vom Z-Puffer
immer gezeichnet.
ACHTUNG:
 |
Hier handelt es sich nicht um einen Grefikfehler!
Die hinteren Dreiecke werden zuletzt gezeichnet und überzeichnen die Vorderen!
Sie können im "Set-parameters"-Befehl auf der "Drawing"-Seite
"Sorted draw" Einstellen.
Dann werden die Dreiecke von hinten nach vorne gezeichnet und es kommt zu keinen Grafikfehlern.
Es ist dabei zu beachten, dass je nach Anzahl der Dreiecke dafür sehr viel Rechenleistung
benötigt wird.
Besonders bei verformten Lade-Objekten mit Transparenzen ist dies die beste Einstellung.
|