OpenGL中的glEnable的作用


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,啟用紋理處理


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM