在 OpenGL中可以啟用的效能

2021-05-22 05:13:27 字數 3836 閱讀 2549

啟用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材質坐 標。

OpenGL在MFC中的實現

1 在寫 之前,首先要做好opengl的環境配置。比如路徑之類,還有新增標頭檔案,標頭檔案新增在stdafx.h中,有位置要求,不能在 include 這句之上 這兩句加在 stdafx.h 裡面的 include 以上就會出現問題,需要加在這一句下面 include include 2 修改函式b...

openGL在VS中的環境配置

5個檔案 glut.dll,glut32.dll,glut.lib,glut32.lib,glut.h 1 把glut.h 複製到x program files microsoft visual studio x.0 vc include gl 資料夾中 如果沒有 gl這個資料夾則可以自己新建乙個。...

怎樣在Nginxserver中啟用Gzip壓縮

enable gzip compression on nginx servers 原文日期 2014年7月16日 翻譯日期 2014年7月19日 翻譯人員 鐵錨速度決定一切,沒有什麼比乙個快速站點更犀利的了。當你訪問我的部落格時,我希望你有乙個良好的體驗,這也是我一直不知疲倦地壓縮全部資源和避免不必...