glDepthRange: Unterschied zwischen den Versionen
Flash (Diskussion | Beiträge) (Version Hochgeladen) |
K (Artikel korrekturgelesen, nur Kleinigkeiten verbessert) |
||
Zeile 3: | Zeile 3: | ||
<br> | <br> | ||
== Name == | == Name == | ||
− | '''glDepthRange''' - | + | '''glDepthRange''' - Bestimmt wie z-Werte von normalisierten Gerätekoordinaten (Device coordinates) zu Fensterkoordinaten (Window coordinates) umgerechnet werden. |
<br> | <br> | ||
Zeile 14: | Zeile 14: | ||
<tr> | <tr> | ||
<td>''near''</td> | <td>''near''</td> | ||
− | <td>Beschreibt | + | <td>Beschreibt wie die nahe [[Clipping Plane|Schnittfläche]] in Fensterkoordinaten umgerechnet werden soll.<br> |
'''Vorgabewert''' ist 0.</td> | '''Vorgabewert''' ist 0.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td>''far''</td> | <td>''far''</td> | ||
− | <td>Beschreibt, wie die ferne [[Clipping Plane]] in Fensterkoordinaten umgerechnet werden soll.<br> | + | <td>Beschreibt, wie die ferne [[Clipping Plane|Schnittfläche]] in Fensterkoordinaten umgerechnet werden soll.<br> |
'''Vorgabewert''' ist 0.</td> | '''Vorgabewert''' ist 0.</td> | ||
</tr> | </tr> | ||
Zeile 27: | Zeile 27: | ||
== Beschreibung == | == Beschreibung == | ||
− | Nach dem die Z-Koordinaten | + | Nach dem die Z-Koordinaten abgeschnitten (clipping) und durch '''w''' geteilt wurden, reichen sie von -1.0 bis 1.0 im Bezug auf die nahe und ferne [[Clipping Plane|Schnittfläche]].<br> |
'''glDepthRange''' beschreibt, wie die normalisieten Z-Koordinaten linear auf dieses Intervall abgebildet und damit in Fenster-Z-Koordinaten umgerechnet werden.<br> | '''glDepthRange''' beschreibt, wie die normalisieten Z-Koordinaten linear auf dieses Intervall abgebildet und damit in Fenster-Z-Koordinaten umgerechnet werden.<br> | ||
Ganz egal wie die aktuelle Implementation des [[Tiefenpuffer|Tiefenpuffers]] ist, die Tiefenwerte der Fensterkoordinaten werden immer so behandelt, als ob sie von 0.0 bis 1.0 reichen würden (so wie Farbkomponenten). Das heißt wiederum, dass beide Werte die von '''glDepthRange''' akzeptiert werden auf dieses Intervall heruntergerechnet werden bevor sie akzeptiert werden. | Ganz egal wie die aktuelle Implementation des [[Tiefenpuffer|Tiefenpuffers]] ist, die Tiefenwerte der Fensterkoordinaten werden immer so behandelt, als ob sie von 0.0 bis 1.0 reichen würden (so wie Farbkomponenten). Das heißt wiederum, dass beide Werte die von '''glDepthRange''' akzeptiert werden auf dieses Intervall heruntergerechnet werden bevor sie akzeptiert werden. | ||
− | Die '''Vorgabe''' von 0, 1 überträgt die nahe | + | Die '''Vorgabe''' von 0, 1 überträgt die nahe Schnittfläche auf 0 und die ferne auf 1. <br> |
Mit dieser Einstellung wird der Tiefenpuffer vollständig ausgenutzt. | Mit dieser Einstellung wird der Tiefenpuffer vollständig ausgenutzt. | ||
Zeile 40: | Zeile 40: | ||
<br> | <br> | ||
== Fehlermeldungen == | == Fehlermeldungen == | ||
− | GL_INVALID_OPERATION wird generiert wenn '''glDepthRange''' innerhalb eines [[glBegin]]-[[glEnd]] Blocks aufgerufen wird. | + | '''GL_INVALID_OPERATION''' wird generiert wenn '''glDepthRange''' innerhalb eines [[glBegin]]-[[glEnd]] Blocks aufgerufen wird. |
<br> | <br> |
Version vom 28. August 2004, 13:55 Uhr
Inhaltsverzeichnis
glDepthRange
Name
glDepthRange - Bestimmt wie z-Werte von normalisierten Gerätekoordinaten (Device coordinates) zu Fensterkoordinaten (Window coordinates) umgerechnet werden.
Delphi-Spezifikation
procedure glDepthRange(zNear: TGLclampd; zFar: TGLclampd);
Parameter
near | Beschreibt wie die nahe Schnittfläche in Fensterkoordinaten umgerechnet werden soll. Vorgabewert ist 0. |
far | Beschreibt, wie die ferne Schnittfläche in Fensterkoordinaten umgerechnet werden soll. Vorgabewert ist 0. |
Beschreibung
Nach dem die Z-Koordinaten abgeschnitten (clipping) und durch w geteilt wurden, reichen sie von -1.0 bis 1.0 im Bezug auf die nahe und ferne Schnittfläche.
glDepthRange beschreibt, wie die normalisieten Z-Koordinaten linear auf dieses Intervall abgebildet und damit in Fenster-Z-Koordinaten umgerechnet werden.
Ganz egal wie die aktuelle Implementation des Tiefenpuffers ist, die Tiefenwerte der Fensterkoordinaten werden immer so behandelt, als ob sie von 0.0 bis 1.0 reichen würden (so wie Farbkomponenten). Das heißt wiederum, dass beide Werte die von glDepthRange akzeptiert werden auf dieses Intervall heruntergerechnet werden bevor sie akzeptiert werden.
Die Vorgabe von 0, 1 überträgt die nahe Schnittfläche auf 0 und die ferne auf 1.
Mit dieser Einstellung wird der Tiefenpuffer vollständig ausgenutzt.
Hinweise
Es ist nicht notwendig, dass near kleiner als far ist. Umgekehrtes Mapping z.B. mit 1, 0 wird akzeptiert
Fehlermeldungen
GL_INVALID_OPERATION wird generiert wenn glDepthRange innerhalb eines glBegin-glEnd Blocks aufgerufen wird.
Zugehörige Wertrückgaben
glGet mit Token GL_Depth_Range