fonction glFrustum
La fonction glFrustum multiplie la matrice actuelle par une matrice de perspective.
Syntaxe
void WINAPI glFrustum(
GLdouble left,
GLdouble right,
GLdouble bottom,
GLdouble top,
GLdouble zNear,
GLdouble zFar
);
Paramètres
-
left
-
Coordonnée du plan de découpage vertical gauche.
-
right
-
Coordonnée du plan de découpage vertical droit.
-
Bas
-
Coordonnée du plan de découpage horizontal inférieur.
-
top
-
Coordonnée du plan de découpage horizontal inférieur.
-
zNear
-
Distances au plan de découpage de près de la profondeur. Doit être positif.
-
zFar
-
Distances jusqu’aux plans de découpage de profondeur. Doit être positif.
Valeur renvoyée
Cette fonction ne retourne pas de valeur.
Codes d’erreur
Les codes d’erreur suivants peuvent être récupérés par la fonction glGetError .
Name | Signification |
---|---|
|
zNear ou zFar n’était pas postitif. |
|
La fonction a été appelée entre un appel à glBegin et l’appel à glEnd correspondant. |
Notes
La fonction glFrustum décrit une matrice de perspective qui produit une projection de perspective. Les paramètres (gauche, bas, zNear) et (à droite, en haut, zNear) spécifient les points du plan de découpage proche qui sont mappés aux coins inférieur gauche et supérieur droit de la fenêtre, respectivement, en supposant que l’œil se trouve à (0,0,0). Le paramètre zFar spécifie l’emplacement du plan de découpage éloigné. zNear et zFar doivent être positifs. La matrice correspondante est illustrée dans l’image suivante.
La fonction glFrustum multiplie la matrice actuelle par cette matrice, le résultat remplaçant la matrice actuelle. Autrement dit, si M est la matrice actuelle et F est la matrice de perspective frustum, glFrustum remplace M par M F.
Utilisez glPushMatrix et glPopMatrix pour enregistrer et restaurer la pile de matrices actuelle.
La précision de la mémoire tampon de profondeur est affectée par les valeurs spécifiées pour zNear et zFar. Plus le rapport entre zFar et zNear est élevé, moins la mémoire tampon de profondeur sera efficace pour distinguer les surfaces qui sont proches les unes des autres. Si
Environ 2(r) bits de la précision de la mémoire tampon de profondeur sont perdus. Comme r approche de l’infini lorsque zNear approche de zéro, vous ne devez jamais définir zNear sur zéro.
Les fonctions suivantes récupèrent des informations sur glFrustum :
glGet avec GL_MATRIX_MODE d’argument
glGet avec argument GL_MODELVIEW_MATRIX
glGet avec argument GL_PROJECTION_MATRIX
glGet avec argument GL_TEXTURE_MATRIX
Spécifications
Condition requise | Valeur |
---|---|
Client minimal pris en charge |
Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge |
Windows 2000 Server [applications de bureau uniquement] |
En-tête |
|
Bibliothèque |
|
DLL |
|