在OpenGL中可以激活的性能

From:http://www.cnblogs.com/AnkrmiWong/

激活OpenGL某一性能可以使用glEnable函数,函数定义:void glEnable(GLenum cap);
抑制OpenGL某一性能可以使用glDisable函数,函数定义:void glDisable(GLenum cap);
函数glIsEnabled用于获取指定性能是否激活;glGet函数有四个变体,
void glGetBooleanv(
  GLenum pname,
  GLboolean *params
);

void glGetDoublev(
  GLenum pname,
  GLdouble *params
);

void glGetFloatv(
  GLenum pname,
  GLfloat * params
);

void glGetIntegerv(
  GLenum pname,
  GLint * params
);
如果要获取alpha测试是否激活,当然使用变体glGetBooleanv函数最恰当,可以避免类型转换。


可使用的OpenGL性能:
GL_ALPHA_TEST  如果激活,做alpha测试;
GL_AUTO_NORMAL 如果激活,做曲面法线矢量分析当GL_MAP2_VERTEX_3或者GL_MAP2_VERTEX_4产生了 顶点坐标;
GL_BLEND  如果激活,混合将提供的RGBA颜色值和颜色缓冲;
GL_CLIP_PLANEi 如果激活,按用户定义的裁剪位面i裁剪几何图形;
GL_COLOR_LOGIC_OP 如果激活,将当前的逻辑操作应用到将提供的RGBA颜色和缓冲颜色值;
GL_COLOR_MATERIAL 如果激活,可有多个材质参数会留下当前颜色的轨迹;
GL_CULL_FACE  如果激活,挑选多边形基于排列在Windows上的坐标;
GL_DEPTH_TEST  如果激活,做深度比较,并且更新深度缓冲;
GL_DITHER  如果激活,在写入颜色缓冲之前,调谐颜色成分和索引;
GL_FOG   如果激活,混合雾化颜色到已呈现的材质上;
GL_INDEX_LOGIC_OP 如果激活,将当前逻辑操作应用到将提供的索引和颜色缓冲索引;
GL_LIGHTi  如果激活,在灯光方程中对light i参数赋值;
GL_LIGHTING  如果激活,使用当前的灯光参数去计算顶点颜色和索引;如果未激活,关联每个顶点当前的颜色和索引。
GL_LINE_SMOOTH 如果激活,用恰当形容不妥,用精细的滤除画线,其实就是消除锯齿现象;否则,画折叠线条。
GL_LINE_STIPPLE 如果激活,使用点线模式画线条。
GL_LOGIC_OP  如果激活,应用当前选择的逻辑操作到将提供的颜色索引和颜色缓冲中的索引。
GL_MAP1_COLOR_4 如果激活,将调用glEvalCoord1,glEvalMesh1,glEvalPoint1产生RGBA颜色。
GL_MAP1_INDEX  如果激活,将调用glEvalCoord1,glEvalMesh1,glEvalPoint1产生颜色索引。
GL_MAP1_NORMAL 如果激活,将调用glEvalCoord1,glEvalMesh1,glEvalPoint1产生法线。
GL_MAP1_TEXTURE_COORD_1 如果激活,将调用glEvalCoord1,glEvalMesh1,glEvalPoint1产生s材质坐标。
GL_MAP1_TEXTURE_COORD_2 如果激活,将调用glEvalCoord1,glEvalMesh1,glEvalPoint1产生s和t材质坐标。
GL_MAP1_TEXTURE_COORD_3 如果激活,将调用glEvalCoord1,glEvalMesh1,glEvalPoint1产生s,t和r材质坐标。
GL_MAP1_TEXTURE_COORD_4 如果激活,将调用glEvalCoord1,glEvalMesh1,glEvalPoint1产生s,t,r和q材质坐标。
GL_MAP1_VERTEX_3 如果激活,将调用glEvalCoord1,glEvalMesh1,glEvalPoint1产生x,y和z顶点坐标。
GL_MAP1_VERTEX_4 如果激活,将调用glEvalCoord1,glEvalMesh1,glEvalPoint1产生均匀的x,y,z和w顶点坐标。
GL_MAP2_COLOR_4 如果激活,将调用glEvalCoord2,glEvalMesh2,glEvalPoint2产生RGBA颜色值。
GL_MAP2_INDEX  如果激活,将调用glEvalCoord2,glEvalMesh2,glEvalPoint2产生颜色索引。
GL_MAP2_NORMAL 如果激活,将调用glEvalCoord2,glEvalMesh2,glEvalPoint2产生法线。
GL_MAP2_TEXTURE_COORD_1 如果激活,将调用glEvalCoord2,glEvalMesh2,glEvalPoint2产生s材质坐标。
GL_MAP2_TEXTURE_COORD_2 如果激活,将调用glEvalCoord2,glEvalMesh2,glEvalPoint2产生s和t材质坐标。
GL_MAP2_TEXTURE_COORD_3 如果激活,将调用glEvalCoord2,glEvalMesh2,glEvalPoint2产生s,t和r材质坐标。
GL_MAP2_TEXTURE_COORD_4 如果激活,将调用glEvalCoord2,glEvalMesh2,glEvalPoint2产生s,t,r和q材质坐标。
GL_MAP2_VERTEX_3 如果激活,将调用glEvalCoord2,glEvalMesh2,glEvalPoint2产生x,y和z顶点坐标。
GL_MAP2_VERTEX_4 如果激活,将调用glEvalCoord2,glEvalMesh2,glEvalPoint2产生均匀的x,y,z和w顶点坐标。
GL_NORMALIZE  如果激活,法线矢量由glNormal指定,并且在转换后按单位长度进行缩放。
GL_POINT_SMOOTH 如果激活,用精细的滤除画点;否则,画层叠的点。
GL_POLYGON_OFFSET_FILL 如果激活,如果多边形在GL_FILL模式下渲染,在深度比较时添加偏移量到多边形断面的深度值。
GL_POLYGON_OFFSET_LINE 如果激活,如果多边形在GL_LINE模式下渲染,在深度比较时添加偏移量到多边形断面的深度值。
GL_POLYGON_OFFSET_POINT 如果激活,如果多边形在GL_POINT模式下渲染,在深度比较时添加偏移量到多边形断面的深度值。
GL_POLYGON_SMOOTH  如果激活,用精细的滤除画多边形;否则,画层叠的多边形。
GL_POLYGON_STIPPLE  如果激活,渲染多边形时使用点多边形模式。
GL_SCISSOR_TEST  如果激活,丢弃截取的矩形的外围碎片。
GL_STENCIL_TEST  如果激活,做模版测试,更新模版缓冲。
GL_TEXTURE_1D   如果激活,一维材质是首选(除非GL_TEXTURE_2D激活)。
GL_TEXTURE_2D   如果激活,二维材质是首选。
GL_TEXTURE_GEN_Q  如果激活,q材质坐标由glTexGen材质产生函数计算得到;否则,使用当前的q材质坐标。
GL_TEXTURE_GEN_R  如果激活,r材质坐标由glTexGen材质产生函数计算得到;否则,使用当前的r材质坐标。
GL_TEXTURE_GEN_S  如果激活,s材质坐标由glTexGen材质产生函数计算得到;否则,使用当前的s材质坐标。
GL_TEXTURE_GEN_T  如果激活,t材质坐标由glTexGen材质产生函数计算得到;否则,使用当前的t材质坐标。

posted @ 2009-08-30 18:34  Revive and Strive  阅读(862)  评论(0编辑  收藏  举报