glDisable 函数

glEnableglDisable 函数启用或禁用 OpenGL 功能。

语法

void WINAPI glDisable(
   GLenum cap
);

parameters

指示 OpenGL 功能的符号常量。

有关 值上限 的讨论,请参阅以下“备注”部分。

返回值

此函数不返回值。

错误代码

glGetError 函数可以检索以下错误代码。

名称 含义
GL_INVALID_ENUM
cap 不是上一“备注”部分中列出的值之一。
GL_INVALID_OPERATION
函数在 对 glBegin 的调用和 glEnd 的相应调用之间调用。

注解

glEnableglDisable 函数启用和禁用各种 OpenGL 图形功能。 使用 glIsEnabledglGet 确定任何功能的当前设置。

glEnableglDisable 均采用单个参数 cap,该参数可以假定以下值之一:

含义
GL_ALPHA_TEST 如果已启用,请执行 alpha 测试。 请参阅 glAlphaFunc
GL_AUTO_NORMAL 如果启用,则当GL_MAP2_VERTEX_3或GL_MAP2_VERTEX_4生成顶点时,以分析方式计算图面正向量。 请参阅 glMap2
GL_BLEND 如果启用,将传入 RGBA 颜色值与颜色缓冲区中的值混合。 请参阅 glBlendFunc
GL_CLIP_PLANE i 如果已启用,则针对用户定义的剪辑平面 i 剪辑几何图形。 请参阅 glClipPlane
GL_COLOR_LOGIC_OP 如果已启用,请将当前逻辑操作应用于传入的 RGBA 颜色和颜色缓冲区值。 请参阅 glLogicOp
GL_COLOR_MATERIAL 如果启用,请让一个或多个材料参数跟踪当前颜色。 请参阅 glColorMaterial
GL_CULL_FACE 如果已启用,则根据窗口坐标中的绕组来清空多边形。 请参阅 glCullFace
GL_DEPTH_TEST 如果已启用,请执行深度比较并更新深度缓冲区。 请参阅 glDepthFuncglDepthRange
GL_DITHER 如果已启用,则为颜色组件或索引,然后再将颜色组件或索引写入颜色缓冲区。
GL_FOG 如果启用,可将雾色混合到帖子着色中。 请参阅 glFog
GL_INDEX_LOGIC_OP 如果已启用,请将当前逻辑操作应用于传入索引和颜色缓冲区索引。 请参阅 glLogicOp
GL_LIGHT i 如果启用,请在照明公式的计算中包含光 i 。 请参阅 glLightModelglLight
GL_LIGHTING 如果启用,请使用当前照明参数来计算顶点颜色或索引。 如果禁用,将当前颜色或索引与每个顶点相关联。 请参阅 glMaterialglLightModelglLight
GL_LINE_SMOOTH 如果已启用,请绘制带正确筛选的线条。 如果禁用,请绘制别名线。 请参阅 glLineWidth
GL_LINE_STIPPLE 如果启用,则使用绘制线条时的当前线条存根图案。 请参阅 glLineStipple
GL_LOGIC_OP 如果启用,请将当前选定的逻辑操作应用于传入索引和颜色缓冲区索引。 请参阅 glLogicOp
GL_MAP1_COLOR_4 如果启用,则调用 glEvalCoord1glEvalMesh1glEvalPoint1 生成 RGBA 值。 另请参阅 glMap1
GL_MAP1_INDEX 如果已启用,则调用 glEvalCoord1glEvalMesh1glEvalPoint1 生成颜色索引。 另请参阅 glMap1
GL_MAP1_NORMAL 如果已启用,则调用 glEvalCoord1glEvalMesh1glEvalPoint1 将生成正常值。 另请参阅 glMap1
GL_MAP1_TEXTURE_COORD_1 如果已启用,则调用 glEvalCoord1glEvalMesh1glEvalPoint1 生成 纹理 坐标。 另请参阅 glMap1
GL_MAP1_TEXTURE_COORD_2 如果已启用,则调用 glEvalCoord1glEvalMesh1glEvalPoint1 生成 st 纹理坐标。 另请参阅 glMap1
GL_MAP1_TEXTURE_COORD_3 如果已启用,则调用 glEvalCoord1glEvalMesh1glEvalPoint1 生成 str 纹理坐标。 另请参阅 glMap1
GL_MAP1_TEXTURE_COORD_4 如果已启用,则调用 glEvalCoord1glEvalMesh1glEvalPoint1 生成 strq 纹理坐标。 另请参阅 glMap1
GL_MAP1_VERTEX_3 如果已启用,则调用 glEvalCoord1glEvalMesh1glEvalPoint1 生成 xyz 顶点坐标。 另请参阅 glMap1
GL_MAP1_VERTEX_4 如果启用,则调用 glEvalCoord1、glEvalMesh1glEvalPoint1 会生成同质 xyzw 顶点坐标。 另请参阅 glMap1
GL_MAP2_COLOR_4 如果启用,则调用 glEvalCoord2glEvalMesh2glEvalPoint2 生成 RGBA 值。 另请参阅 glMap2
GL_MAP2_INDEX 如果启用,则调用 glEvalCoord2glEvalMesh2glEvalPoint2 会生成颜色索引。 另请参阅 glMap2
GL_MAP2_NORMAL 如果启用,则调用 glEvalCoord2glEvalMesh2glEvalPoint2 将生成正常值。 另请参阅 glMap2
GL_MAP2_TEXTURE_COORD_1 如果启用,则调用 glEvalCoord2glEvalMesh2glEvalPoint2会生成 纹理坐标。 另请参阅 glMap2
GL_MAP2_TEXTURE_COORD_2 如果启用,则调用 glEvalCoord2glEvalMesh2glEvalPoint2 会生成 st 纹理坐标。 另请参阅 glMap2
GL_MAP2_TEXTURE_COORD_3 如果启用,则调用 glEvalCoord2、glEvalMesh2glEvalPoint2 生成 str 纹理坐标。 另请参阅 glMap2
GL_MAP2_TEXTURE_COORD_4 如果启用,则调用 glEvalCoord2glEvalMesh2glEvalPoint2 生成 strq 纹理坐标。 另请参阅 glMap2
GL_MAP2_VERTEX_3 如果启用,则调用 glEvalCoord2glEvalMesh2glEvalPoint2 生成 xyz 顶点坐标。 另请参阅 glMap2
GL_MAP2_VERTEX_4 如果启用,则调用 glEvalCoord2、glEvalMesh2glEvalPoint2 会生成同质 xyzw 顶点坐标。 另请参阅 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 如果已启用,请执行模具测试并更新模具缓冲区。 请参阅 glStencilFuncglStencilOp
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 定义的纹理生成函数计算 s 纹理坐标。 如果禁用,则 使用当前纹理 坐标。
GL_TEXTURE_GEN_T 如果启用,将使用 glTexGen 定义的纹理生成函数计算 t 纹理坐标。 如果禁用,则使用当前 t 纹理坐标。

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Gl.h

Opengl32.lib
DLL
Opengl32.dll

另请参阅

glAlphaFunc

glArrayElement

glBegin

glBlendFunc

glClipPlane

glColorMaterial

glColorPointer

glCullFace

glDepthFunc

glDepthRange

glDrawArrays

glEdgeFlagPointer

glEnable

glEnd

glEvalCoord1

glEvalMesh1

glEvalPoint1

glFog

glGet

glIndexPointer

glIsEnabled

glLight

glLightModel

glLineWidth

glLineStipple

glLogicOp

glMap1

glMap2

glMaterial

glNormal

glNormalPointer

glPointSize

glPolygonMode

glPolygonStipple

glScissor

glStencilFunc

glStencilOp

glTexCoordPointer

glTexGen

glTexImage1D

glTexImage2D