C SPECIFICATION
void GLAPIENTRY glFogf( GLenum pname,
GLfloat param )
void GLAPIENTRY glFogi( GLenum pname,
GLint param )
PARAMETERS
pname Specifies a single-valued fog parameter. GL_FOG_MODE,
GL_FOG_DENSITY, GL_FOG_START, GL_FOG_END, and GL_FOG_INDEX are
accepted.
param Specifies the value that pname will be set to.
C SPECIFICATION
void GLAPIENTRY glFogfv( GLenum pname,
const GLfloat *params )
void GLAPIENTRY glFogiv( GLenum pname,
const GLint *params )
PARAMETERS
pname Specifies a fog parameter. GL_FOG_MODE, GL_FOG_DENSITY,
GL_FOG_START, GL_FOG_END, GL_FOG_INDEX, and GL_FOG_COLOR are
accepted.
params Specifies the value or values to be assigned to pname.
GL_FOG_COLOR requires an array of four values. All other param-
eters accept an array containing only a single value.
DESCRIPTION
Fog is initially disabled. While enabled, fog affects rasterized geom-
etry, bitmaps, and pixel blocks, but not buffer clear operations. To
enable and disable fog, call glEnable and glDisable with argument
GL_FOG.
glFog assigns the value or values in params to the fog parameter speci-
fied 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_COLOR params contains four integer or floating-point val-
ues that specify Cf, the fog color. Integer values
are mapped linearly such that the most positive
representable value maps to 1.0, and the most nega-
tive representable value maps to -1.0. Floating-
point values are mapped directly. After conver-
sion, 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 posttex-
turing 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
f=e_n_e<I>d_n_d<I>s_<I>t_z<I>a_r_t_
The equation for GL_EXP fog is
f=e-(density?z)
The equation for GL_EXP2 fog is
f=e-(density?z)2
Regardless of the fog mode, f is clamped to the range [0, 1] after it is com-
puted. Then, if the GL is in RGBA color mode, the fragment's red, green, and
blue colors, represented by Cr, are replaced by
Cr?=fCr+(1-f)Cf
Fog does not affect a fragment's alpha component.
In color index mode, the fragment's color index ir is replaced by
ir?=ir+(1-f)if
ERRORS
GL_INVALID_ENUM is generated if pname is not an accepted value, or if
pname is GL_FOG_MODE and params is not an accepted value.
GL_INVALID_VALUE is generated if pname is GL_FOG_DENSITY, and params is
negative.
GL_INVALID_OPERATION is generated if glFog is executed between the exe-
cution of glBegin and the corresponding execution of glEnd.
GLFOG(3G)
Man(1) output converted with
man2html