glEnable
OpenGl 函数。用于启用各种功能。具体功能由参数决定。与glDisable相对应。glDisable用以关闭各项功能。glEnable不能写在glBegin和glEnd两个函数中间。cap具体取值为OpenGl所预设的常量。各种功能参见参数cap的取值表。可能出现错误代码的情况。
目录
1基本内容
4需求环境
参数说明
voidglEnable(GLenumcap);
GLenum说明参数应为unsignedint类型
cap具体取值为OpenGl所预设的常量。cap决定所要启用的功能。各种功能参见参数cap的取值表。
代码示例
glEnable(GL_BLEND);//启用色彩混合
备注
使用glIsEnabled或者glGet来确定当前各项功能的开启情况。
glEnable不能写在glBegin和glEnd两个函数中间。
cap参数表
错误提示代码
可能出现错误代码的情况。
需求环境
需要WindowsNT3.5或者更高。
需要Windows95或者更高.这一设置同样适用于Windows95。
Gl.h文件中声明。
使用库Opengl32.lib。
类型值说明
GL_ALPHA_TEST4864根据函数glAlphaFunc的条件要求来决定图形透明的层度是否显示。具体参见glAlphaFunc
GL_AUTO_NORMAL3456执行后,图形能把光反射到各个方向
GL_BLEND3042启用 颜色混合 。例如实现半透明效果
GL_CLIP_PLANE0 ~ GL_CLIP_PLANE512288 ~ 12283根据函数glClipPlane的条件要求
启用图形切割管道。这里指六种缓存管道
GL_COLOR_LOGIC_OP3058启用每一像素的色彩为位 逻辑运算
GL_COLOR_MATERIAL2930执行后,图形(材料)将根据光线的照耀进行反射。
反射要求由函数 glColorMaterial 进行设定。
GL_CULL_FACE2884根据函数 glCullFace 要求启用隐藏图形材料的面。
GL_DEPTH_TEST2929启用深度测试。
根据坐标的远近自动隐藏被遮住的图形(材料)
GL_DITHER3024启用抖动
GL_FOG2912雾化效果
例如距离越远越模糊
GL_INDEX_LOGIC_OP3057逻辑操作
GL_LIGHT0 ~ GL_LIGHT716384 ~ 16391启用0号灯到7号灯(光源)
光源要求由函数glLight函数来完成
GL_LIGHTING2896启用灯源
GL_LINE_SMOOTH2848执行后,过虑线段的锯齿
GL_LINE_STIPPLE2852执行后,画虚线
GL_LOGIC_OP3057逻辑操作
GL_MAP1_COLOR_43472根据函数Map1对 贝赛尔曲线 的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
生成 RGBA 曲线
GL_MAP1_INDEX3473根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
生成颜色索引曲线
GL_MAP1_NORMAL3474根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
生成 法线
GL_MAP1_TEXTURE_COORD_13475根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
生成文理坐标
GL_MAP1_TEXTURE_COORD_23476根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
生成文理坐标
GL_MAP1_TEXTURE_COORD_33477根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
生成文理坐标
GL_MAP1_TEXTURE_COORD_43478根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
生成文理坐标
GL_MAP1_VERTEX_33479根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
在三维空间里生成曲线
GL_MAP1_VERTEX_43480根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
在 四维空间 里生成 法线
GL_MAP2_COLOR_43504根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
生成 RGBA 曲线
GL_MAP2_INDEX3505根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
生成颜色索引
GL_MAP2_NORMAL3506根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
生成 法线
GL_MAP2_TEXTURE_COORD_13507根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
生成纹理坐标
GL_MAP2_TEXTURE_COORD_23508根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
生成纹理坐标
GL_MAP2_TEXTURE_COORD_33509根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
生成纹理坐标
GL_MAP2_TEXTURE_COORD_43510根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
生成纹理坐标
GL_MAP2_VERTEX_33511根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
在三维空间里生成曲线
GL_MAP2_VERTEX_43512根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
在 三维空间 里生成曲线
GL_NORMALIZE2977根据函数glNormal的设置条件,启用 法向量
GL_POINT_SMOOTH2832执行后,过虑线点的锯齿
GL_POLYGON_OFFSET_FILL32823根据函数glPolygonOffset的设置,启用面的深度偏移
GL_POLYGON_OFFSET_LINE10754根据函数glPolygonOffset的设置,启用线的深度偏移
GL_POLYGON_OFFSET_POINT10753根据函数glPolygonOffset的设置,启用点的深度偏移
GL_POLYGON_SMOOTH2881过虑图形(多边形)的锯齿
GL_POLYGON_STIPPLE2882执行后,多边形为矢量画图
GL_SCISSOR_TEST3089根据函数glScissor设置,启用图形剪切
GL_STENCIL_TEST2960开启使用 模板测试 并且更新模版缓存。参见glStencilFunc和glStencilOp.
GL_TEXTURE_1D3552启用一维文理
GL_TEXTURE_2D3553启用二维文理
GL_TEXTURE_GEN_Q3171根据函数glTexGen,启用纹理处理
GL_TEXTURE_GEN_R3170根据函数glTexGen,启用纹理处理
GL_TEXTURE_GEN_S3168根据函数glTexGen,启用纹理处理
GL_TEXTURE_GEN_T3169根据函数glTexGen,启用纹理处理
可能出现错误代码的情况。
错误代码出现错误的可能情况
GL_INVALID_ENUMcap的值不是 OpenGl 所预设的值中的一个。.
GL_INVALID_OPERATIONglEnable在 glBegin 和glEnd之间被使用。
Windows NT/2000:需要 Windows NT 3.5 或者更高。
Windows 95/98:需要 Windows 95 或者更高. 这一设置同样适用于 Windows 95。
头文件:在Gl.h文件中声明。
库:使用库 Opengl32.lib
网友评论