glEnable
用于启用各种功能。功能由参数决定。与glDisable相对应。glDisable是用来关闭的。两个函数参数取值是一至的。


参数说明:
void glEnable(GLenum cap)
GLenum    是unsigned int 类型
cap             是一个取值。由值决定启用的功能键。各种功能请看参数cap的取值表

代码示例:

…… 
 000  glEnable(GL_BLEND);//


说明:
glEnable不能写在glBegin和glEnd两个函数中间。


参数cap的取值

类型 说明
GL_ALPHA_TEST 4864 跟据函数glAlphaFunc的条件要求来决定图形透明的层度是否显示。
GL_AUTO_NORMAL 3456 执行后,图形能把光反射到各个方向
GL_BLEND 3042 启用颜色混合。例如实现半透明效果
GL_CLIP_PLANE0 ~ GL_CLIP_PLANE5 12288 ~ 12283 根据函数glClipPlane的条件要求
启用图形切割管道。这里指六种缓存管道
GL_COLOR_LOGIC_OP 3058 启用每一像素的色彩为位逻辑运算
GL_COLOR_MATERIAL 2930 执行后,图形(材料)将根据光线的照耀进行反射。
反射要求由函数glColorMaterial进行设定。
GL_CULL_FACE 2884 根据函数glCullFace要求启用隐藏图形材料的面。
GL_DEPTH_TEST 2929 启用深度测试。
根据坐标的远近自动隐藏被遮住的图形(材料)
GL_DITHER 3024 启用抖动
GL_FOG 2912 雾化效果
例如距离越远越模糊
GL_INDEX_LOGIC_OP 3057 逻辑操作
GL_LIGHT0 ~ GL_LIGHT7 16384 ~ 16391 启用0号灯到7号灯(光源)
光源要求由函数glLight函数来完成
GL_LIGHTING 2896 启用灯源
GL_LINE_SMOOTH 2848 执行后,过虑线段的锯齿
GL_LINE_STIPPLE 2852 执行后,画虚线
GL_LOGIC_OP 3057 逻辑操作
GL_MAP1_COLOR_4 3472 根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
生成RGBA曲线
GL_MAP1_INDEX 3473 根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
生成颜色索引曲线
GL_MAP1_NORMAL 3474 根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
生成法线
GL_MAP1_TEXTURE_COORD_1 3475 根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
生成文理坐标
GL_MAP1_TEXTURE_COORD_2 3476 根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
生成文理坐标
GL_MAP1_TEXTURE_COORD_3 3477 根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
生成文理坐标
GL_MAP1_TEXTURE_COORD_4 3478 根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
生成文理坐标
GL_MAP1_VERTEX_3 3479 根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
在三维空间里生成曲线
GL_MAP1_VERTEX_4 3480 根据函数Map1对贝赛尔曲线的设置,
启用glEvalCoord1,glEvalMesh1,glEvalPoint1
在四维空间里生成法线
GL_MAP2_COLOR_4 3504 根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
生成RGBA曲线
GL_MAP2_INDEX 3505 根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
生成颜色索引
GL_MAP2_NORMAL 3506 根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
生成法线
GL_MAP2_TEXTURE_COORD_1 3507 根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
生成纹理坐标
GL_MAP2_TEXTURE_COORD_2 3508 根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
生成纹理坐标
GL_MAP2_TEXTURE_COORD_3 3509 根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
生成纹理坐标
GL_MAP2_TEXTURE_COORD_4 3510 根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
生成纹理坐标
GL_MAP2_VERTEX_3 3511 根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
在三维空间里生成曲线
GL_MAP2_VERTEX_4 3512 根据函数Map2对贝赛尔曲线的设置,
启用glEvalCoord2,glEvalMesh2,glEvalPoint2
在三维空间里生成曲线
GL_NORMALIZE 2977 根据函数glNormal的设置条件,启用法向量
GL_POINT_SMOOTH 2832 执行后,过虑线点的锯齿
GL_POLYGON_OFFSET_FILL 32823 根据函数glPolygonOffset的设置,启用面的深度偏移
GL_POLYGON_OFFSET_LINE 10754 根据函数glPolygonOffset的设置,启用线的深度偏移
GL_POLYGON_OFFSET_POINT 10753 根据函数glPolygonOffset的设置,启用点的深度偏移
GL_POLYGON_SMOOTH 2881 过虑图形(多边形)的锯齿
GL_POLYGON_STIPPLE 2882 执行后,多边形为矢量画图
GL_SCISSOR_TEST 3089 根据函数glScissor设置,启用图形剪切
GL_STENCIL_TEST 2960  
GL_TEXTURE_1D 3552 启用一维文理
GL_TEXTURE_2D 3553 启用二维文理
GL_TEXTURE_GEN_Q 3171 根据函数glTexGen,启用纹理处理
GL_TEXTURE_GEN_R 3170 根据函数glTexGen,启用纹理处理
GL_TEXTURE_GEN_S 3168 根据函数glTexGen,启用纹理处理
GL_TEXTURE_GEN_T 3169 根据函数glTexGen,启用纹理处理

OpenGl学习 glenable()函数理解的更多相关文章

  1. OpenGl学习glMatrixMode()函数理解

    glMatrixMode()函数的参数,这个函数其实就是对接下来要做什么进行一下声明,也就是在要做下一步之前告诉计算机我要对“什么”进行操作了,这个“什么”在glMatrixMode的“()”里的选项 ...

  2. OpenGl的glMatrixMode()函数理解

    glMatrixMode()函数的参数,这个函数其实就是对接下来要做什么进行一下声明,也就是在要做下一步之前告诉计算机我要对“什么”进行操作了,这个“什么”在glMatrixMode的“()”里的选项 ...

  3. OpenGl学习 SelectObject函数

    SelectObject 函数功能:该函数选择一对象到指定的设备上下文环境中,该新对象替换先前的相同类型的对象.   函数原型:HGDIOBJ SelectObject(HDC hdc, HGDIOB ...

  4. OpenGL学习之路(三)

    1 引子 这些天公司一次次的软件发布节点忙的博主不可开交,另外还有其它的一些事也占用了很多时间.现在坐在电脑前,在很安静的环境下,与大家分享自己的OpenGL学习笔记和理解心得,感到格外舒服.这让我回 ...

  5. OpenGL学习之路(五)

    1 引子 不知不觉我们已经进入到读书笔记(五)了,我们先对前四次读书笔记做一个总结.前四次读书笔记主要是学习了如何使用OpenGL来绘制几何图形(包括二维几何体和三维几何体),并学习了平移.旋转.缩放 ...

  6. OpenGL学习进程(12)第九课:矩阵乘法实现3D变换

    本节是OpenGL学习的第九个课时,下面将详细介绍OpenGL的多种3D变换和如何操作矩阵堆栈.     (1)3D变换: OpenGL中绘制3D世界的空间变换包括:模型变换.视图变换.投影变换和视口 ...

  7. OpenGL学习进程(11)第八课:颜色绘制的详解

        本节是OpenGL学习的第八个课时,下面将详细介绍OpenGL的颜色模式,颜色混合以及抗锯齿.     (1)颜色模式: OpenGL支持两种颜色模式:一种是RGBA,一种是颜色索引模式. R ...

  8. OpenGL学习笔记:拾取与选择

    转自:OpenGL学习笔记:拾取与选择 在开发OpenGL程序时,一个重要的问题就是互动,假设一个场景里面有很多元素,当用鼠标点击不同元素时,期待作出不同的反应,那么在OpenGL里面,是怎么知道我当 ...

  9. OpenGL学习之路(一)

    1 引子 虽然是计算机科班出身,但从小对几何方面的东西就不太感冒,空间想象能力也较差,所以从本科到研究生,基本没接触过<计算机图形学>.为什么说基本没学过呢?因为好奇(尤其是惊叹于三维游戏 ...

随机推荐

  1. easyui refresh 刷新两次的解决方法(推荐)

    //这样写刷新两次 $("#windowid").window('refresh','url01.php'); $("#windowid").window('o ...

  2. PowerDesigner P M F 的意思

    M:表示强制非空:P:是否为主键:D:是否在模型中显示.gerenate:表示是否作为表生成

  3. springboot项目启动报错

    启动springboot项目报错: NoSuchMethodError: org.apache.tomcat.util.scan.StandardJarScanner.setJarScanFilter ...

  4. 持续集成之路 —— Mock对象引起的测试失败

    今天遇到了一个很奇怪的问题,纠结了好久.在和同事念叨这个问题时,突然想到了问题所在. 问题现象: 在一个Service的单元测试类中有八个测试用例,单独运行时都可以正常通过.可是一旦一起运行时,总是会 ...

  5. APUE读书笔记-第15章-进程间通信

    15.1 引言 *进程之间交换信息的方法可以经由fork或exec传送打开文件,或者通过文件系统 *进程之间相互通信的其他技术——IPC(InterProcess Communication)包括半双 ...

  6. NSDate 时区转换问题

    一: NSDateFormatter *dateFormater = [[NSDateFormatter alloc]init]; [dateFormater setDateFormat:@" ...

  7. error: Microsoft Visual C++ 9.0 is required. Get it from http://aka.ms/vcpython27

    G:\Soft\python\word_cloud-master>python setup.py install error: Microsoft Visual C++ 9.0 is requi ...

  8. GIS+=地理信息+容器技术(4)——Docker执行

    -------------------------------------------------------------------------------------- Blog:    http ...

  9. 使用 Spring 2.5 TestContext 测试框架

    Spring 2.5 TestContext 测试框架用于测试基于 Spring 的程序,TestContext 测试框架和低版本 Spring 测试框架没有任何关系,是一个全新的基于注解的测试框架, ...

  10. or1200中载入存储类指令说明

    下面内容摘自<步步惊芯--软核处理器内部设计分析>一书 OR1200中实现的载入存储类指令有8条,每条指令的作用与说明如表9.1所看到的. watermark/2/text/aHR0cDo ...