glFog assigns the value or values in params to the
fog parameter specified by pname. The following values are accepted for
pname:

GL_FOG_MODE

params is a single integer or floating-point value that
specifies the equation to be used to compute the fog blend factor, $f$.
Three symbolic constants are accepted: GL_LINEAR, GL_EXP, and GL_EXP2. The
equations corresponding to these symbolic constants are defined below. The
initial fog mode is GL_EXP.

GL_FOG_DENSITY

params is a single integer or
floating-point value that specifies $density$, the fog density used in both
exponential fog equations. Only nonnegative densities are accepted. The initial
fog density is 1.

GL_FOG_START

params is a single integer or floating-point
value that specifies $start$, the near distance used in the linear fog
equation. The initial near distance is 0.

GL_FOG_END

params is a single integer
or floating-point value that specifies $end$, the far distance used in the
linear fog equation. The initial far distance is 1.

GL_FOG_INDEX

params is
a single integer or floating-point value that specifies $i sub f$, the fog
color index. The initial fog index is 0.

GL_FOG_COLOR

params contains four
integer or floating-point values that specify $C sub f$, the fog color. Integer
values are mapped linearly such that the most positive representable value
maps to 1.0, and the most negative representable value maps to -1.0. Floating-point
values are mapped directly. After conversion, all color components are clamped
to the range [0,1]. The initial fog color is (0, 0, 0, 0).

Fog blends a fog
color with each rasterized pixel fragment's posttexturing color using a
blending factor $f$. Factor $f$ is computed in one of three ways, depending
on the fog mode. Let $z$ be the distance in eye coordinates from the origin
to the fragment being fogged. The equation for GL_LINEAR fog is

eqn not
supported

The equation for GL_EXP fog is

eqn not supported

The equation
for GL_EXP2 fog is

eqn not supported

Regardless of the fog mode, $f$ is
clamped to the range [0, 1] after it is computed. Then, if the GL is in RGBA
color mode, the fragment's red, green, and blue colors, represented by $C
sub r$, are replaced by