glEnable 函数
glEnable 和 glDisable 函数启用或禁用 OpenGL 功能。
语法
void WINAPI glEnable(
GLenum cap
);
参数
-
帽
-
指示 OpenGL 功能的符号常量。
有关可以采用的值 上限 的讨论,请参阅以下“备注”部分。
返回值
此函数不返回值。
错误代码
glGetError 函数可以检索以下错误代码。
名称 | 含义 |
---|---|
|
cap 不是上述“备注”部分中列出的值之一。 |
|
在对 glBegin 的调用和对 glEnd 的相应调用之间调用了函数。 |
备注
glEnable 和 glDisable 函数启用和禁用各种 OpenGL 图形功能。 使用 glIsEnabled 或 glGet 确定任何功能的当前设置。
glEnable 和 glDisable 都采用单个参数 cap,这可以假定以下值之一:
值 | 含义 |
---|---|
GL_ALPHA_TEST | 如果启用,请执行 alpha 测试。 请参阅 glAlphaFunc。 |
GL_AUTO_NORMAL | 如果启用,则当GL_MAP2_VERTEX_3或GL_MAP2_VERTEX_4生成顶点时,以分析方式计算表面法向量。 请参阅 glMap2。 |
GL_BLEND | 如果启用,请将传入的 RGBA 颜色值与颜色缓冲区中的值混合。 请参阅 glBlendFunc。 |
GL_CLIP_PLANEi | 如果启用,则根据用户定义的剪裁平面 i 剪裁几何图形。 请参阅 glClipPlane。 |
GL_COLOR_LOGIC_OP | 如果启用,请将当前逻辑操作应用于传入的 RGBA 颜色和颜色缓冲区值。 请参阅 glLogicOp。 |
GL_COLOR_MATERIAL | 如果启用,请让一个或多个材料参数跟踪当前颜色。 请参阅 glColorMaterial。 |
GL_CULL_FACE | 如果启用,则根据多边形在窗口坐标中的缠绕来剔除多边形。 请参阅 glCullFace。 |
GL_DEPTH_TEST | 如果启用,请执行深度比较并更新深度缓冲区。 请参阅 glDepthFunc 和 glDepthRange。 |
GL_DITHER | 如果启用,请在将颜色组件或索引写入颜色缓冲区之前进行颜色分色。 |
GL_FOG | 如果启用,请将雾色混合到后纹理颜色中。 请参阅 glFog。 |
GL_INDEX_LOGIC_OP | 如果启用,请将当前逻辑操作应用于传入索引和颜色缓冲区索引。 请参阅 glLogicOp。 |
GL_LIGHTi | 如果启用,请在照明公式的计算中包含光 i 。 请参阅 glLightModel 和 glLight。 |
GL_LIGHTING | 如果启用,请使用当前照明参数来计算顶点颜色或索引。 如果禁用,请将当前颜色或索引与每个顶点相关联。 请参阅 glMaterial、 glLightModel 和 glLight。 |
GL_LINE_SMOOTH | 如果启用,请使用正确的筛选绘制线条。 如果禁用,则绘制别名线。 请参阅 glLineWidth。 |
GL_LINE_STIPPLE | 如果启用,请在绘制线条时使用当前线条点阵模式。 请参阅 glLineStipple。 |
GL_LOGIC_OP | 如果启用,请将当前选择的逻辑操作应用于传入索引和颜色缓冲区索引。 请参阅 glLogicOp。 |
GL_MAP1_COLOR_4 | 如果启用,调用 glEvalCoord1、 glEvalMesh1 和 glEvalPoint1 会生成 RGBA 值。 另请参阅 glMap1。 |
GL_MAP1_INDEX | 如果启用,调用 glEvalCoord1、 glEvalMesh1 和 glEvalPoint1 将生成颜色索引。 另请参阅 glMap1。 |
GL_MAP1_NORMAL | 如果启用,对 glEvalCoord1、 glEvalMesh1 和 glEvalPoint1 的调用将生成法线。 另请参阅 glMap1。 |
GL_MAP1_TEXTURE_COORD_1 | 如果启用,调用 glEvalCoord1、 glEvalMesh1 和 glEvalPoint1 会生成 纹理 坐标。 另请参阅 glMap1。 |
GL_MAP1_TEXTURE_COORD_2 | 如果启用,调用 glEvalCoord1、 glEvalMesh1 和 glEvalPoint1 将生成 s 和 t 纹理坐标。 另请参阅 glMap1。 |
GL_MAP1_TEXTURE_COORD_3 | 如果启用,调用 glEvalCoord1、 glEvalMesh1 和 glEvalPoint1 会生成 s、 t 和 r 纹理坐标。 另请参阅 glMap1。 |
GL_MAP1_TEXTURE_COORD_4 | 如果启用,调用 glEvalCoord1、 glEvalMesh1 和 glEvalPoint1 会生成 s、 t、 r 和 q 纹理坐标。 另请参阅 glMap1。 |
GL_MAP1_VERTEX_3 | 如果启用,调用 glEvalCoord1、 glEvalMesh1 和 glEvalPoint1 会生成 x、 y 和 z 顶点坐标。 另请参阅 glMap1。 |
GL_MAP1_VERTEX_4 | 如果启用,调用 glEvalCoord1、 glEvalMesh1 和 glEvalPoint1 会生成同质 x、 y、 z 和 w 顶点坐标。 另请参阅 glMap1。 |
GL_MAP2_COLOR_4 | 如果启用,调用 glEvalCoord2、 glEvalMesh2 和 glEvalPoint2 会生成 RGBA 值。 另请参阅 glMap2。 |
GL_MAP2_INDEX | 如果启用,调用 glEvalCoord2、 glEvalMesh2 和 glEvalPoint2 将生成颜色索引。 另请参阅 glMap2。 |
GL_MAP2_NORMAL | 如果启用,对 glEvalCoord2、 glEvalMesh2 和 glEvalPoint2 的调用将生成法线。 另请参阅 glMap2。 |
GL_MAP2_TEXTURE_COORD_1 | 如果启用,调用 glEvalCoord2、 glEvalMesh2 和 glEvalPoint2 会生成 纹理 坐标。 另请参阅 glMap2。 |
GL_MAP2_TEXTURE_COORD_2 | 如果启用,调用 glEvalCoord2、 glEvalMesh2 和 glEvalPoint2 将生成 s 和 t 纹理坐标。 另请参阅 glMap2。 |
GL_MAP2_TEXTURE_COORD_3 | 如果启用,调用 glEvalCoord2、 glEvalMesh2 和 glEvalPoint2 会生成 s、 t 和 r 纹理坐标。 另请参阅 glMap2。 |
GL_MAP2_TEXTURE_COORD_4 | 如果启用,调用 glEvalCoord2、 glEvalMesh2 和 glEvalPoint2 会生成 s、 t、 r 和 q 纹理坐标。 另请参阅 glMap2。 |
GL_MAP2_VERTEX_3 | 如果启用,调用 glEvalCoord2、 glEvalMesh2 和 glEvalPoint2 会生成 x、 y 和 z 顶点坐标。 另请参阅 glMap2。 |
GL_MAP2_VERTEX_4 | 如果启用,则调用 glEvalCoord2、 glEvalMesh2 和 glEvalPoint2 将生成同质 x、 y、 z 和 w 顶点坐标。 另请参阅 glMap2。 |
GL_NORMALIZE | 如果启用,则使用 glNormal 指定的法向量在转换后缩放为单位长度。 见 glNormal。 |
GL_POINT_SMOOTH | 如果启用,则使用正确筛选绘制点。 如果禁用,则绘制别名点。 请参阅 glPointSize。 |
GL_POLYGON_OFFSET_FILL | 如果启用,并且多边形在GL_FILL模式下呈现,则会在执行深度比较之前向多边形片段的深度值添加偏移量。 请参阅 glPolygonOffset。 |
GL_POLYGON_OFFSET_LINE | 如果启用,并且多边形以GL_LINE模式呈现,则会在执行深度比较之前向多边形片段的深度值添加偏移量。 请参阅 glPolygonOffset。 |
GL_POLYGON_OFFSET_POINT | 如果启用,如果在GL_POINT模式下呈现多边形,则会在执行深度比较之前将偏移量添加到多边形片段的深度值。 请参阅 glPolygonOffset。 |
GL_POLYGON_SMOOTH | 如果启用,则绘制具有适当筛选的多边形。 如果禁用,则绘制别名多边形。 请参阅 glPolygonMode。 |
GL_POLYGON_STIPPLE | 如果启用,则呈现多边形时使用当前多边形样式。 请参阅 glPolygonStipple。 |
GL_SCISSOR_TEST | 如果启用,请丢弃剪刀矩形外部的片段。 请参阅 glScissor。 |
GL_STENCIL_TEST | 如果启用,请执行模具测试并更新模具缓冲区。 请参阅 glStencilFunc 和 glStencilOp。 |
GL_TEXTURE_1D | 如果启用,则 (执行一维纹理,除非) 也启用了二维纹理。 请参阅 glTexImage1D。 |
GL_TEXTURE_2D | 如果启用,则执行二维纹理。 请参阅 glTexImage2D。 |
GL_TEXTURE_GEN_Q | 如果启用,则使用 glTexGen 定义的纹理生成函数计算 q 纹理坐标。 否则,使用当前 q 纹理坐标。 |
GL_TEXTURE_GEN_R | 如果启用,则使用 glTexGen 定义的纹理生成函数计算 r 纹理坐标。 如果禁用,则使用当前 r 纹理坐标。 |
GL_TEXTURE_GEN_S | 如果启用,则使用 glTexGen 定义的纹理生成函数计算纹理坐标。 如果禁用,则使用当前 纹理 坐标。 |
GL_TEXTURE_GEN_T | 如果启用,则使用 glTexGen 定义的纹理生成函数计算 t 纹理坐标。 如果禁用,则使用当前 t 纹理坐标。 |
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 |
Windows 2000 Server [仅限桌面应用] |
标头 |
|
库 |
|
DLL |
|