GLENABLE(3G) UNIX Programmer's Manual GLENABLE(3G)
NAME
glEnable, glDisable - enable or disable server-side GL capa-
bilities
C SPECIFICATION
void glEnable( GLenum cap )
PARAMETERS
cap Specifies a symbolic constant indicating a GL capabil-
ity.
C SPECIFICATION
void glDisable( GLenum cap )
PARAMETERS
cap Specifies a symbolic constant indicating a GL capabil-
ity.
DESCRIPTION
glEnable and glDisable enable and disable various capabili-
ties. Use glIsEnabled or glGet to determine the current set-
ting of any capability. The initial value for each capabil-
ity with the exception of GL_DITHER is GL_FALSE. The initial
value for GL_DITHER is GL_TRUE.
Both glEnable and glDisable take a single argument, cap,
which can assume one of the following values:
GL_ALPHA_TEST If enabled, do alpha testing. See
glAlphaFunc.
GL_AUTO_NORMAL If enabled, generate normal vectors
when either GL_MAP2_VERTEX_3 or
GL_MAP2_VERTEX_4 is used to gen-
erate vertices. See glMap2.
GL_BLEND If enabled, blend the incoming RGBA
color values with the values in the
color buffers. See glBlendFunc.
GL_CLIP_PLANEi If enabled, clip geometry against
user-defined clipping plane i. See
glClipPlane.
GL_COLOR_LOGIC_OP If enabled, apply the currently
selected logical operation to the
incoming RGBA color and color
buffer values. See glLogicOp.
MirBSD #10-current Printed 2021-12-07 1
GLENABLE(3G) UNIX Programmer's Manual GLENABLE(3G)
GL_COLOR_MATERIAL If enabled, have one or more
material parameters track the
current color. See glColorMaterial.
GL_COLOR_TABLE If enabled, preform a color table
lookup on the incoming RGBA color
values. See glColorTable.
GL_CONVOLUTION_1D If enabled, perform a 1D convolu-
tion operation on incoming RGBA
color values. See
glConvolutionFilter1D.
GL_CONVOLUTION_2D If enabled, perform a 2D convolu-
tion operation on incoming RGBA
color values. See
glConvolutionFilter2D.
GL_CULL_FACE If enabled, cull polygons based on
their winding in window coordi-
nates. See glCullFace.
GL_DEPTH_TEST If enabled, do depth comparisons
and update the depth buffer. Note
that even if the depth buffer
exists and the depth mask is non-
zero, the depth buffer is not
updated if the depth test is dis-
abled. See glDepthFunc and
glDepthRange.
GL_DITHER If enabled, dither color components
or indices before they are written
to the color buffer.
GL_FOG If enabled, blend a fog color into
the posttexturing color. See glFog.
GL_HISTOGRAM If enabled, histogram incoming RGBA
color values. See glHistogram.
GL_INDEX_LOGIC_OP If enabled, apply the currently
selected logical operation to the
incoming index and color buffer
indices. See
glLogicOp.
GL_LIGHTi If enabled, include light i in the
evaluation of the lighting equa-
tion. See glLightModel and glLight.
GL_LIGHTING If enabled, use the current
MirBSD #10-current Printed 2021-12-07 2
GLENABLE(3G) UNIX Programmer's Manual GLENABLE(3G)
lighting parameters to compute the
vertex color or index. Otherwise,
simply associate the current color
or index with each vertex. See
glMaterial, glLightModel, and
glLight.
GL_LINE_SMOOTH If enabled, draw lines with correct
filtering. Otherwise, draw aliased
lines. See glLineWidth.
GL_LINE_STIPPLE If enabled, use the current line
stipple pattern when drawing lines.
See glLineStipple.
GL_MAP1_COLOR_4 If enabled, calls to glEvalCoord1,
glEvalMesh1, and glEvalPoint1 gen-
erate RGBA values. See glMap1.
GL_MAP1_INDEX If enabled, calls to glEvalCoord1,
glEvalMesh1, and glEvalPoint1 gen-
erate color indices. See glMap1.
GL_MAP1_NORMAL If enabled, calls to glEvalCoord1,
glEvalMesh1, and glEvalPoint1 gen-
erate normals. See glMap1.
GL_MAP1_TEXTURE_COORD_1 If enabled, calls to glEvalCoord1,
glEvalMesh1, and glEvalPoint1 gen-
erate s texture coordinates. See
glMap1.
GL_MAP1_TEXTURE_COORD_2 If enabled, calls to glEvalCoord1,
glEvalMesh1, and glEvalPoint1 gen-
erate s and t texture coordinates.
See glMap1.
GL_MAP1_TEXTURE_COORD_3 If enabled, calls to glEvalCoord1,
glEvalMesh1, and glEvalPoint1 gen-
erate s, t, and r texture coordi-
nates. See glMap1.
GL_MAP1_TEXTURE_COORD_4 If enabled, calls to glEvalCoord1,
glEvalMesh1, and glEvalPoint1 gen-
erate s, t, r, and q texture coor-
dinates. See glMap1.
GL_MAP1_VERTEX_3 If enabled, calls to glEvalCoord1,
glEvalMesh1, and glEvalPoint1 gen-
erate x, y, and z vertex coordi-
nates. See glMap1.
MirBSD #10-current Printed 2021-12-07 3
GLENABLE(3G) UNIX Programmer's Manual GLENABLE(3G)
GL_MAP1_VERTEX_4 If enabled, calls to glEvalCoord1,
glEvalMesh1, and glEvalPoint1 gen-
erate homogeneous x, y, z, and w
vertex coordinates. See glMap1.
GL_MAP2_COLOR_4 If enabled, calls to glEvalCoord2,
glEvalMesh2, and glEvalPoint2 gen-
erate RGBA values. See glMap2.
GL_MAP2_INDEX If enabled, calls to glEvalCoord2,
glEvalMesh2, and glEvalPoint2 gen-
erate color indices. See glMap2.
GL_MAP2_NORMAL If enabled, calls to glEvalCoord2,
glEvalMesh2, and glEvalPoint2 gen-
erate normals. See glMap2.
GL_MAP2_TEXTURE_COORD_1 If enabled, calls to glEvalCoord2,
glEvalMesh2, and glEvalPoint2 gen-
erate s texture coordinates. See
glMap2.
GL_MAP2_TEXTURE_COORD_2 If enabled, calls to glEvalCoord2,
glEvalMesh2, and glEvalPoint2 gen-
erate s and t texture coordinates.
See glMap2.
GL_MAP2_TEXTURE_COORD_3 If enabled, calls to glEvalCoord2,
glEvalMesh2, and glEvalPoint2 gen-
erate s, t, and r texture coordi-
nates. See glMap2.
GL_MAP2_TEXTURE_COORD_4 If enabled, calls to glEvalCoord2,
glEvalMesh2, and glEvalPoint2 gen-
erate s, t, r, and q texture coor-
dinates. See glMap2.
GL_MAP2_VERTEX_3 If enabled, calls to glEvalCoord2,
glEvalMesh2, and glEvalPoint2 gen-
erate x, y, and z vertex coordi-
nates. See glMap2.
GL_MAP2_VERTEX_4 If enabled, calls to glEvalCoord2,
glEvalMesh2, and glEvalPoint2 gen-
erate homogeneous x, y, z, and w
vertex coordinates. See glMap2.
GL_MINMAX If enabled, compute the minimum and
maximum values of incoming RGBA
color values. See glMinmax.
GL_NORMALIZE If enabled, normal vectors
MirBSD #10-current Printed 2021-12-07 4
GLENABLE(3G) UNIX Programmer's Manual GLENABLE(3G)
specified with glNormal are scaled
to unit length after transforma-
tion. See glNormal.
GL_POINT_SMOOTH If enabled, draw points with proper
filtering. Otherwise, draw aliased
points. See glPointSize.
GL_POLYGON_OFFSET_FILL If enabled, and if the polygon is
rendered in GL_FILL mode, an offset
is added to depth values of a
polygon's fragments before the
depth comparison is performed. See
glPolygonOffset.
GL_POLYGON_OFFSET_LINE If enabled, and if the polygon is
rendered in GL_LINE mode, an offset
is added to depth values of a
polygon's fragments before the
depth comparison is performed. See
glPolygonOffset.
GL_POLYGON_OFFSET_POINT If enabled, an offset is added to
depth values of a polygon's frag-
ments before the depth comparison
is performed, if the polygon is
rendered in GL_POINT mode. See
glPolygonOffset.
GL_POLYGON_SMOOTH If enabled, draw polygons with
proper filtering. Otherwise, draw
aliased polygons. For correct
anti-aliased polygons, an alpha
buffer is needed and the polygons
must be sorted front to back.
GL_POLYGON_STIPPLE If enabled, use the current polygon
stipple pattern when rendering
polygons. See glPolygonStipple.
GL_POST_COLOR_MATRIX_COLOR_TABLE
If enabled, preform a color table
lookup on RGBA color values after
color matrix transformation. See
glColorTable.
GL_POST_CONVOLUTION_COLOR_TABLE
If enabled, preform a color table
lookup on RGBA color values after
convolution. See glColorTable.
GL_RESCALE_NORMAL If enabled, normal vectors
MirBSD #10-current Printed 2021-12-07 5
GLENABLE(3G) UNIX Programmer's Manual GLENABLE(3G)
specified with glNormal are scaled
to unit length after transforma-
tion. See glNormal.
GL_SEPARABLE_2D If enabled, perform a two-
dimensional convolution operation
using a separable convolution
filter on incoming RGBA color
values. See glSeparableFilter2D.
GL_SCISSOR_TEST If enabled, discard fragments that
are outside the scissor rectangle.
See glScissor.
GL_STENCIL_TEST If enabled, do stencil testing and
update the stencil buffer. See
glStencilFunc and glStencilOp.
GL_TEXTURE_1D If enabled, one-dimensional textur-
ing is performed (unless two- or
three-dimensional texturing is also
enabled). See glTexImage1D.
GL_TEXTURE_2D If enabled, two-dimensional textur-
ing is performed (unless three-
dimensional texturing is also
enabled). See glTexImage2D.
GL_TEXTURE_3D If enabled, three-dimensional tex-
turing is performed. See
glTexImage3D.
GL_TEXTURE_GEN_Q If enabled, the q texture coordi-
nate is computed using the texture
generation function defined with
glTexGen. Otherwise, the current q
texture coordinate is used. See
glTexGen.
GL_TEXTURE_GEN_R If enabled, the r texture coordi-
nate is computed using the texture
generation function defined with
glTexGen. Otherwise, the current r
texture coordinate is used. See
glTexGen.
GL_TEXTURE_GEN_S If enabled, the s texture coordi-
nate is computed using the texture
generation function defined with
glTexGen. Otherwise, the current s
texture coordinate is used. See
glTexGen.
MirBSD #10-current Printed 2021-12-07 6
GLENABLE(3G) UNIX Programmer's Manual GLENABLE(3G)
GL_TEXTURE_GEN_T If enabled, the t texture coordi-
nate is computed using the texture
generation function defined with
glTexGen. Otherwise, the current t
texture coordinate is used. See
glTexGen.
NOTES
GL_POLYGON_OFFSET_FILL, GL_POLYGON_OFFSET_LINE,
GL_POLYGON_OFFSET_POINT, GL_COLOR_LOGIC_OP, and
GL_INDEX_LOGIC_OP are available only if the GL version is
1.1 or greater.
GL_RESCALE_NORMAL, and GL_TEXTURE_3D are available only if
the GL version is 1.2 or greater.
GL_COLOR_TABLE, GL_CONVOLUTION_1D, GL_CONVOLUTION_2D,
GL_HISTOGRAM, GL_MINMAX, GL_POST_COLOR_MATRIX_COLOR_TABLE,
GL_POST_CONVOLUTION_COLOR_TABLE, and GL_SEPARABLE_2D are
available only if GL_ARB_imaging is returned from glGet with
an argument of GL_EXTENSIONS.
If GL_ARB_multitexture is supported, GL_TEXTURE_1D,
GL_TEXTURE_2D, GL_TEXTURE_3D, GL_TEXTURE_GEN_S,
GL_TEXTURE_GEN_T, GL_TEXTURE_GEN_R, and GL_TEXTURE_GEN_Q
enable or disable the respective state for the active tex-
ture unit specified with glActiveTextureARB.
ERRORS
GL_INVALID_ENUM is generated if cap is not one of the values
listed previously.
GL_INVALID_OPERATION is generated if glEnable or glDisable
is executed between the execution of glBegin and the
corresponding execution of glEnd.
SEE ALSO
glActiveTextureARB(3G), glAlphaFunc(3G), glBlendFunc(3G),
glClipPlane(3G), glColorMaterial(3G), glCullFace(3G),
glDepthFunc(3G), glDepthRange(3G), glEnableClientState(3G),
glFog(3G), glGet(3G), glIsEnabled(3G), glLight(3G),
glLightModel(3G), glLineWidth(3G), glLineStipple(3G),
glLogicOp(3G), glMap1(3G), glMap2(3G), glMaterial(3G),
glNormal(3G), glPointSize(3G), glPolygonMode(3G),
glPolygonOffset(3G), glPolygonStipple(3G), glScissor(3G),
glStencilFunc(3G), glStencilOp(3G), glTexGen(3G),
glTexImage1D(3G), glTexImage2D(3G), glTexImage3D(3G)
MirBSD #10-current Printed 2021-12-07 7