glFogiv, fonction

La fonction glFogfv spécifie les paramètres de brouillard.

Syntaxe

void WINAPI glFogiv(
         GLenum pname,
   const GLint  *params
);

Paramètres

pname

Spécifie un paramètre de brouillard.

Accepte l’une des valeurs suivantes.

Valeur Signification
GL_FOG_MODE
Le paramètre params est une valeur entière unique qui spécifie l’équation à utiliser pour calculer le facteur de fusion de brouillard, f. Trois constantes symboliques sont acceptées : GL_LINEAR, GL_EXP et GL_EXP2. Les équations correspondant à ces constantes symboliques sont définies dans la section Remarques suivante. Le mode brouillard par défaut est GL_EXP.
GL_FOG_DENSITY
Le paramètre params est une valeur entière unique qui spécifie la densité, la densité de brouillard utilisée dans les deux équations exponentielles de brouillard. Seules les densités non négatives sont acceptées. La densité de brouillard par défaut est 1,0.
GL_FOG_START
Le paramètre params est une valeur entière unique qui spécifie le début, la distance proche utilisée dans l’équation de brouillard linéaire. La distance proche par défaut est 0,0.
GL_FOG_END
Le paramètre params est une valeur entière unique qui spécifie la fin, la distance éloignée utilisée dans l’équation de brouillard linéaire. La distance éloignée par défaut est 1,0.
GL_FOG_INDEX
Le paramètre params est une valeur entière unique qui spécifie if , l’index de couleur de brouillard. L’index de brouillard par défaut est 0,0.
GL_FOG_COLOR
Le paramètre params contient quatre valeurs entières ou à virgule flottante qui spécifient Cf , la couleur de brouillard. Les valeurs entières sont mappées de façon linéaire, de sorte que la valeur la plus positive est mappée à 1,0 et que la valeur la plus négative est mappée à -1,0. Les valeurs à virgule flottante sont mappées directement. Après la conversion, tous les composants de couleur sont fixés à la plage [0,1]. La couleur de brouillard par défaut est (0,0,0,0).

params

Spécifie la valeur ou les valeurs à affecter à pname. GL_FOG_COLOR nécessite un tableau de quatre valeurs. Tous les autres paramètres acceptent un tableau contenant une seule valeur.

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 .

Nom Signification
GL_INVALID_ENUM
pname n’était pas une valeur acceptée.
GL_INVALID_OPERATION
La fonction a été appelée entre un appel à glBegin et l’appel correspondant à glEnd.

Notes

Vous activez et désactivez le brouillard avec glEnable et glDisable à l’aide de l’argument GL_FOG. Bien qu’il soit activé, le brouillard affecte la géométrie rasterisée, les bitmaps et les blocs de pixels, mais pas les opérations de mise en mémoire tampon.

La fonction glFogiv affecte la valeur ou les valeurs dans les paramètres de brouillard spécifiés par pname.

Le brouillard mélange une couleur de brouillard avec la couleur posttexturante de chaque fragment de pixel ratérisé à l’aide d’un facteur de fusion f. Le facteur f est calculé de l’une des trois manières, selon le mode brouillard. Laissez z être la distance entre les coordonnées oculaires de l’origine et le fragment en cours de journalisation. L’équation de GL_LINEAR brouillard est la suivante :

Equation showing the value of the blending factor in GL_LINEAR fog mode as a function of distance.

L’équation de GL_EXP brouillard est la suivante :

Equation showing the value of the blending factor in GL_EXP fog mode.

L’équation de GL_EXP2 brouillard est la suivante :

Equation showing the value of the blending factor in GL_EXP2 fog mode.

Quel que soit le mode brouillard, f est fixé à la plage [0,1] après son calcul. Ensuite, si OpenGL est en mode couleur RVBA, le Cr de couleur du fragment est remplacé par

Equation showing the fogged fragment's color as a function of blending factor and fog color.

En mode d’index de couleur, l’index de couleur du fragment est remplacé par

Equation showing the fogged fragment's color index as a function of blending factor and indexed color.

Les fonctions suivantes récupèrent des informations relatives aux fonctions glFog :

glGet avec l’argument GL_FOG_COLOR

glGet avec l’argument GL_FOG_INDEX

glGet avec l’argument GL_FOG_DENSITY

glGet avec l’argument GL_FOG_START

glGet avec l’argument GL_FOG_END

glGet avec l’argument GL_FOG_MODE

glIsEnabled avec l’argument GL_FOG

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
Gl.h
Bibliothèque
Opengl32.lib
DLL
Opengl32.dll

Voir aussi

glBegin

glDisable

glEnable

glEnd

glGet

glIsEnabled