'\" et '\"! eqn|tbl | mmdoc '\"macro stdmacro .ds Vn Version 1.2 .ds Dt 24 September 1999 .ds Re Release 1.2.1 .ds Dp Jan 14 18:30 .ds Dm 01 enable.gl .ds Xs 48946 14 enable.gl .TH GLENABLE 3G .SH NAME .B "glEnable, glDisable \- enable or disable server-side GL capabilities .SH C SPECIFICATION void \f3glEnable\fP( GLenum \fIcap\fP ) .nf .fi .SH PARAMETERS .TP \w'\f2cap\fP\ \ 'u \f2cap\fP Specifies a symbolic constant indicating a GL capability. .SH C SPECIFICATION void \f3glDisable\fP( GLenum \fIcap\fP ) .nf .fi .SH PARAMETERS .TP \f2cap\fP Specifies a symbolic constant indicating a GL capability. .SH DESCRIPTION \%\f3glEnable\fP and \%\f3glDisable\fP enable and disable various capabilities. Use \%\f3glIsEnabled\fP or \%\f3glGet\fP to determine the current setting of any capability. The initial value for each capability with the exception of \%\f3GL_DITHER\fP is \%\f3GL_FALSE\fP. The initial value for \%\f3GL_DITHER\fP is \%\f3GL_TRUE\fP. .P Both \%\f3glEnable\fP and \%\f3glDisable\fP take a single argument, \f2cap\fP, which can assume one of the following values: .TP 25 \%\f3GL_ALPHA_TEST\fP If enabled, do alpha testing. See \%\f3glAlphaFunc\fP. .TP \%\f3GL_AUTO_NORMAL\fP If enabled, generate normal vectors when either \%\f3GL_MAP2_VERTEX_3\fP or \%\f3GL_MAP2_VERTEX_4\fP is used to generate vertices. See \%\f3glMap2\fP. .TP \%\f3GL_BLEND\fP If enabled, blend the incoming RGBA color values with the values in the color buffers. See \%\f3glBlendFunc\fP. .TP \%\f3GL_CLIP_PLANE\fP\f2i\fP If enabled, clip geometry against user-defined clipping plane \f2i\fP. See \%\f3glClipPlane\fP. .TP \%\f3GL_COLOR_LOGIC_OP\fP If enabled, apply the currently selected logical operation to the incoming RGBA color and color buffer values. See \%\f3glLogicOp\fP. .TP \%\f3GL_COLOR_MATERIAL\fP If enabled, have one or more material parameters track the current color. See \%\f3glColorMaterial\fP. .TP \%\f3GL_COLOR_TABLE\fP If enabled, preform a color table lookup on the incoming RGBA color values. See \%\f3glColorTable\fP. .TP \%\f3GL_CONVOLUTION_1D\fP If enabled, perform a 1D convolution operation on incoming RGBA color values. See \%\f3glConvolutionFilter1D\fP. .TP \%\f3GL_CONVOLUTION_2D\fP If enabled, perform a 2D convolution operation on incoming RGBA color values. See \%\f3glConvolutionFilter2D\fP. .TP \%\f3GL_CULL_FACE\fP If enabled, cull polygons based on their winding in window coordinates. See \%\f3glCullFace\fP. .TP \%\f3GL_DEPTH_TEST\fP 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 disabled. See \%\f3glDepthFunc\fP and .br \%\f3glDepthRange\fP. .TP \%\f3GL_DITHER\fP If enabled, dither color components or indices before they are written to the color buffer. .TP \%\f3GL_FOG\fP If enabled, blend a fog color into the posttexturing color. See \%\f3glFog\fP. .TP \%\f3GL_HISTOGRAM\fP If enabled, histogram incoming RGBA color values. See \%\f3glHistogram\fP. .TP \%\f3GL_INDEX_LOGIC_OP\fP If enabled, apply the currently selected logical operation to the incoming index and color buffer indices. See .br \%\f3glLogicOp\fP. .TP \%\f3GL_LIGHT\fP\f2i\fP If enabled, include light \f2i\fP in the evaluation of the lighting equation. See \%\f3glLightModel\fP and \%\f3glLight\fP. .TP \%\f3GL_LIGHTING\fP If enabled, use the current lighting parameters to compute the vertex color or index. Otherwise, simply associate the current color or index with each vertex. See .br \%\f3glMaterial\fP, \%\f3glLightModel\fP, and \%\f3glLight\fP. .TP \%\f3GL_LINE_SMOOTH\fP If enabled, draw lines with correct filtering. Otherwise, draw aliased lines. See \%\f3glLineWidth\fP. .TP \%\f3GL_LINE_STIPPLE\fP If enabled, use the current line stipple pattern when drawing lines. See \%\f3glLineStipple\fP. .TP \%\f3GL_MAP1_COLOR_4\fP If enabled, calls to \%\f3glEvalCoord1\fP, \%\f3glEvalMesh1\fP, and \%\f3glEvalPoint1\fP generate RGBA values. See \%\f3glMap1\fP. .TP \%\f3GL_MAP1_INDEX\fP If enabled, calls to \%\f3glEvalCoord1\fP, \%\f3glEvalMesh1\fP, and \%\f3glEvalPoint1\fP generate color indices. See \%\f3glMap1\fP. .TP \%\f3GL_MAP1_NORMAL\fP If enabled, calls to \%\f3glEvalCoord1\fP, \%\f3glEvalMesh1\fP, and \%\f3glEvalPoint1\fP generate normals. See \%\f3glMap1\fP. .TP \%\f3GL_MAP1_TEXTURE_COORD_1\fP If enabled, calls to \%\f3glEvalCoord1\fP, \%\f3glEvalMesh1\fP, and \%\f3glEvalPoint1\fP generate \f2s\fP texture coordinates. See \%\f3glMap1\fP. .TP \%\f3GL_MAP1_TEXTURE_COORD_2\fP If enabled, calls to \%\f3glEvalCoord1\fP, \%\f3glEvalMesh1\fP, and \%\f3glEvalPoint1\fP generate \f2s\fP and \f2t\fP texture coordinates. See \%\f3glMap1\fP. .TP \%\f3GL_MAP1_TEXTURE_COORD_3\fP If enabled, calls to \%\f3glEvalCoord1\fP, \%\f3glEvalMesh1\fP, and \%\f3glEvalPoint1\fP generate \f2s\fP, \f2t\fP, and \f2r\fP texture coordinates. See \%\f3glMap1\fP. .TP \%\f3GL_MAP1_TEXTURE_COORD_4\fP If enabled, calls to \%\f3glEvalCoord1\fP, \%\f3glEvalMesh1\fP, and \%\f3glEvalPoint1\fP generate \f2s\fP, \f2t\fP, \f2r\fP, and \f2q\fP texture coordinates. See \%\f3glMap1\fP. .TP \%\f3GL_MAP1_VERTEX_3\fP If enabled, calls to \%\f3glEvalCoord1\fP, \%\f3glEvalMesh1\fP, and \%\f3glEvalPoint1\fP generate \f2x\fP, \f2y\fP, and \f2z\fP vertex coordinates. See \%\f3glMap1\fP. .TP \%\f3GL_MAP1_VERTEX_4\fP If enabled, calls to \%\f3glEvalCoord1\fP, \%\f3glEvalMesh1\fP, and \%\f3glEvalPoint1\fP generate homogeneous \f2x\fP, \f2y\fP, \f2z\fP, and \f2w\fP vertex coordinates. See \%\f3glMap1\fP. .TP \%\f3GL_MAP2_COLOR_4\fP If enabled, calls to \%\f3glEvalCoord2\fP, \%\f3glEvalMesh2\fP, and \%\f3glEvalPoint2\fP generate RGBA values. See \%\f3glMap2\fP. .TP \%\f3GL_MAP2_INDEX\fP If enabled, calls to \%\f3glEvalCoord2\fP, \%\f3glEvalMesh2\fP, and \%\f3glEvalPoint2\fP generate color indices. See \%\f3glMap2\fP. .TP \%\f3GL_MAP2_NORMAL\fP If enabled, calls to \%\f3glEvalCoord2\fP, \%\f3glEvalMesh2\fP, and \%\f3glEvalPoint2\fP generate normals. See \%\f3glMap2\fP. .TP \%\f3GL_MAP2_TEXTURE_COORD_1\fP If enabled, calls to \%\f3glEvalCoord2\fP, \%\f3glEvalMesh2\fP, and \%\f3glEvalPoint2\fP generate \f2s\fP texture coordinates. See \%\f3glMap2\fP. .TP \%\f3GL_MAP2_TEXTURE_COORD_2\fP If enabled, calls to \%\f3glEvalCoord2\fP, \%\f3glEvalMesh2\fP, and \%\f3glEvalPoint2\fP generate \f2s\fP and \f2t\fP texture coordinates. See \%\f3glMap2\fP. .TP \%\f3GL_MAP2_TEXTURE_COORD_3\fP If enabled, calls to \%\f3glEvalCoord2\fP, \%\f3glEvalMesh2\fP, and \%\f3glEvalPoint2\fP generate \f2s\fP, \f2t\fP, and \f2r\fP texture coordinates. See \%\f3glMap2\fP. .TP \%\f3GL_MAP2_TEXTURE_COORD_4\fP If enabled, calls to \%\f3glEvalCoord2\fP, \%\f3glEvalMesh2\fP, and \%\f3glEvalPoint2\fP generate \f2s\fP, \f2t\fP, \f2r\fP, and \f2q\fP texture coordinates. See \%\f3glMap2\fP. .TP \%\f3GL_MAP2_VERTEX_3\fP If enabled, calls to \%\f3glEvalCoord2\fP, \%\f3glEvalMesh2\fP, and \%\f3glEvalPoint2\fP generate \f2x\fP, \f2y\fP, and \f2z\fP vertex coordinates. See \%\f3glMap2\fP. .TP \%\f3GL_MAP2_VERTEX_4\fP If enabled, calls to \%\f3glEvalCoord2\fP, \%\f3glEvalMesh2\fP, and \%\f3glEvalPoint2\fP generate homogeneous \f2x\fP, \f2y\fP, \f2z\fP, and \f2w\fP vertex coordinates. See \%\f3glMap2\fP. .TP \%\f3GL_MINMAX\fP If enabled, compute the minimum and maximum values of incoming RGBA color values. See \%\f3glMinmax\fP. .TP \%\f3GL_NORMALIZE\fP If enabled, normal vectors specified with \%\f3glNormal\fP are scaled to unit length after transformation. See \%\f3glNormal\fP. .TP \%\f3GL_POINT_SMOOTH\fP If enabled, draw points with proper filtering. Otherwise, draw aliased points. See \%\f3glPointSize\fP. .TP \%\f3GL_POLYGON_OFFSET_FILL\fP If enabled, and if the polygon is rendered in \%\f3GL_FILL\fP mode, an offset is added to depth values of a polygon's fragments before the depth comparison is performed. See \%\f3glPolygonOffset\fP. .TP \%\f3GL_POLYGON_OFFSET_LINE\fP If enabled, and if the polygon is rendered in \%\f3GL_LINE\fP mode, an offset is added to depth values of a polygon's fragments before the depth comparison is performed. See \%\f3glPolygonOffset\fP. .TP \%\f3GL_POLYGON_OFFSET_POINT\fP If enabled, an offset is added to depth values of a polygon's fragments before the depth comparison is performed, if the polygon is rendered in \%\f3GL_POINT\fP mode. See \%\f3glPolygonOffset\fP. .TP \%\f3GL_POLYGON_SMOOTH\fP 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. .TP \%\f3GL_POLYGON_STIPPLE\fP If enabled, use the current polygon stipple pattern when rendering polygons. See \%\f3glPolygonStipple\fP. .TP \%\f3GL_POST_COLOR_MATRIX_COLOR_TABLE\fP If enabled, preform a color table lookup on RGBA color values after color matrix transformation. See \%\f3glColorTable\fP. .TP \%\f3GL_POST_CONVOLUTION_COLOR_TABLE\fP If enabled, preform a color table lookup on RGBA color values after convolution. See \%\f3glColorTable\fP. .TP \%\f3GL_RESCALE_NORMAL\fP If enabled, normal vectors specified with \%\f3glNormal\fP are scaled to unit length after transformation. See \%\f3glNormal\fP. .TP \%\f3GL_SEPARABLE_2D\fP If enabled, perform a two-dimensional convolution operation using a separable convolution filter on incoming RGBA color values. See \%\f3glSeparableFilter2D\fP. .TP \%\f3GL_SCISSOR_TEST\fP If enabled, discard fragments that are outside the scissor rectangle. See \%\f3glScissor\fP. .TP \%\f3GL_STENCIL_TEST\fP If enabled, do stencil testing and update the stencil buffer. See \%\f3glStencilFunc\fP and \%\f3glStencilOp\fP. .TP \%\f3GL_TEXTURE_1D\fP If enabled, one-dimensional texturing is performed (unless two- or three-dimensional texturing is also enabled). See \%\f3glTexImage1D\fP. .TP \%\f3GL_TEXTURE_2D\fP If enabled, two-dimensional texturing is performed (unless three-dimensional texturing is also enabled). See \%\f3glTexImage2D\fP. .TP \%\f3GL_TEXTURE_3D\fP If enabled, three-dimensional texturing is performed. See \%\f3glTexImage3D\fP. .TP \%\f3GL_TEXTURE_GEN_Q\fP If enabled, the \f2q\fP texture coordinate is computed using the texture generation function defined with \%\f3glTexGen\fP. Otherwise, the current \f2q\fP texture coordinate is used. See \%\f3glTexGen\fP. .TP \%\f3GL_TEXTURE_GEN_R\fP If enabled, the \f2r\fP texture coordinate is computed using the texture generation function defined with \%\f3glTexGen\fP. Otherwise, the current \f2r\fP texture coordinate is used. See \%\f3glTexGen\fP. .TP \%\f3GL_TEXTURE_GEN_S\fP If enabled, the \f2s\fP texture coordinate is computed using the texture generation function defined with \%\f3glTexGen\fP. Otherwise, the current \f2s\fP texture coordinate is used. See \%\f3glTexGen\fP. .TP \%\f3GL_TEXTURE_GEN_T\fP If enabled, the \f2t\fP texture coordinate is computed using the texture generation function defined with \%\f3glTexGen\fP. Otherwise, the current \f2t\fP texture coordinate is used. See \%\f3glTexGen\fP. .SH NOTES \%\f3GL_POLYGON_OFFSET_FILL\fP, \%\f3GL_POLYGON_OFFSET_LINE\fP, \%\f3GL_POLYGON_OFFSET_POINT\fP, \%\f3GL_COLOR_LOGIC_OP\fP, and \%\f3GL_INDEX_LOGIC_OP\fP are available only if the GL version is 1.1 or greater. .P \%\f3GL_RESCALE_NORMAL\fP, and \%\f3GL_TEXTURE_3D\fP are available only if the GL version is 1.2 or greater. .P \%\f3GL_COLOR_TABLE\fP, \%\f3GL_CONVOLUTION_1D\fP, \%\f3GL_CONVOLUTION_2D\fP, \%\f3GL_HISTOGRAM\fP, \%\f3GL_MINMAX\fP, \%\f3GL_POST_COLOR_MATRIX_COLOR_TABLE\fP, \%\f3GL_POST_CONVOLUTION_COLOR_TABLE\fP, and \%\f3GL_SEPARABLE_2D\fP are available only if \%\f3GL_ARB_imaging\fP is returned from \%\f3glGet\fP with an argument of \%\f3GL_EXTENSIONS\fP. .P If \%\f3GL_ARB_multitexture\fP is supported, \%\f3GL_TEXTURE_1D\fP, \%\f3GL_TEXTURE_2D\fP, \%\f3GL_TEXTURE_3D\fP, \%\f3GL_TEXTURE_GEN_S\fP, \%\f3GL_TEXTURE_GEN_T\fP, \%\f3GL_TEXTURE_GEN_R\fP, and \%\f3GL_TEXTURE_GEN_Q\fP enable or disable the respective state for the active texture unit specified with \%\f3glActiveTextureARB\fP. .SH ERRORS \%\f3GL_INVALID_ENUM\fP is generated if \f2cap\fP is not one of the values listed previously. .P \%\f3GL_INVALID_OPERATION\fP is generated if \%\f3glEnable\fP or \%\f3glDisable\fP is executed between the execution of \%\f3glBegin\fP and the corresponding execution of \%\f3glEnd\fP. .SH SEE ALSO \%\f3glActiveTextureARB(3G)\fP, \%\f3glAlphaFunc(3G)\fP, \%\f3glBlendFunc(3G)\fP, \%\f3glClipPlane(3G)\fP, \%\f3glColorMaterial(3G)\fP, \%\f3glCullFace(3G)\fP, \%\f3glDepthFunc(3G)\fP, \%\f3glDepthRange(3G)\fP, \%\f3glEnableClientState(3G)\fP, \%\f3glFog(3G)\fP, \%\f3glGet(3G)\fP, \%\f3glIsEnabled(3G)\fP, \%\f3glLight(3G)\fP, \%\f3glLightModel(3G)\fP, \%\f3glLineWidth(3G)\fP, \%\f3glLineStipple(3G)\fP, \%\f3glLogicOp(3G)\fP, \%\f3glMap1(3G)\fP, \%\f3glMap2(3G)\fP, \%\f3glMaterial(3G)\fP, \%\f3glNormal(3G)\fP, \%\f3glPointSize(3G)\fP, \%\f3glPolygonMode(3G)\fP, \%\f3glPolygonOffset(3G)\fP, \%\f3glPolygonStipple(3G)\fP, \%\f3glScissor(3G)\fP, \%\f3glStencilFunc(3G)\fP, \%\f3glStencilOp(3G)\fP, \%\f3glTexGen(3G)\fP, \%\f3glTexImage1D(3G)\fP, \%\f3glTexImage2D(3G)\fP, \%\f3glTexImage3D(3G)\fP