啟用抗鋸齒
還是以glenable來啟用抗鋸齒,可以根據不同圖形進行處理
1. gl_point_smooth 點
2. gl_line_smooth 線
3. gl_polygon_smooth 多邊形
抗鋸齒質量
效果越好,那麼計算機速度就越慢
glhint用於對點,線,多邊形的抗鋸齒程度進行設定
1. gl_dont_care 放棄,應該是系統預設吧
2. gl_fastest 速度優先
3. gl_nicest 圖形顯示質量優先
點抗鋸齒(rgba模式)
glpointsize(10);
glenable (gl_point_smooth);//啟動點抗鋸齒
glhint (gl_point_smooth, gl_nicest); //影象渲染質量
左圖1:不啟動抗鋸齒
右圖2:啟動抗鋸齒
線抗鋸齒
glenable (gl_blend);
glblendfunc (gl_src_alpha, gl_one_minus_src_alpha);
glenable (gl_line_smooth);
glhint (gl_line_smooth, gl_nicest);
gllinewidth (10);
右圖1:不啟動抗鋸齒
右圖2:啟動抗鋸齒,不啟用混合
右圖2:啟動抗鋸齒,啟用混合
多重取樣
多重取樣的技巧使用額外的顏色,深度和模板資訊,對opengl圖元進行抗鋸齒處理
1.建立乙個多重取樣的視窗
glutinitdisplaymode (glut_double | glut_rgb |
glut_multisample
);2.查詢狀態變數gl_sample_buffers
glgetintegerv (gl_sample_buffers, buf);
3.查詢狀態變數gl_sample
glgetintegerv (gl_samples, sbuf);
如果buf=1 sbuf>1 就可以使用多重取樣
4.啟動多重取樣
glenable(glut_multisample)
說明:多邊形抗鋸齒做好採用多重取樣進行抗鋸齒
#include "header.h"
static float rotangle = 0.;
void init(void)
void display(void)
void reshape(int w, int h)
void keyboard(unsigned char key, int x, int y)
}int main(int argc, char** argv)
opengl中的抗鋸齒
opengl的抗鋸齒 1.對直線和點主要用函式gl enable gl line smooth 或gl enable gl point smooth 2.對rgba模式需要啟動混合功能,最常用的混合模式為gl src alpha和gl one minus src alpha 用gl blend開啟混...
openGL中的抗鋸齒實現
圖形繪製到螢幕時,光柵化影象通過離散的畫素點來表示,因此所繪製的圖元 比如直線 會產生鋸齒,這種鋸齒也稱作走樣。消除鋸齒的技術稱為反走樣,也叫做抗鋸齒,通過這種處理可在一定程度上消除鋸齒的影響,增強顯示效果。在opengl中,可通過函式glhint 來對影象質量和繪製速度之間的權衡作一些控制,其函式...
抗鋸齒渲染
乙個圖形的大小總與其數學模型相對應.又稱為反鋸齒或者反走樣,就是對影象的邊緣進行平滑處理,使其看起來更加柔和流暢的一種技術.qpainter進行繪製時可以使用qpainter renderhint渲染提示來指定是否要使用抗鋸齒功能,渲染提示的取值如下.qpainter的渲染提示常量 描述qpaint...