OpenGL之图元描边的绘制流程
生活随笔
收集整理的這篇文章主要介紹了
OpenGL之图元描边的绘制流程
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
立體圖元的繪制與渲染,之前的文章已經(jīng)完全實(shí)現(xiàn)了圖元的“顏色填充”,圖元邊框的繪制也有接觸,詳情可參考:OpenGL之矩陣堆棧繪制立體圖元。
這里具體的介紹一下圖元邊框的繪制原理和流程:
- 首先,如果圖元沒有渲染邊框 ,是什么效果呢?通過效果圖,我們可以看到:圖元分不清輪廓,看不清圖元面與面的區(qū)分,很難看出圖元具體是什么樣子,這主要是因?yàn)槌霈F(xiàn)類似ZFighting的問題,OpenGL中沒有辦法通過相同顏色的圖層,來區(qū)分圖層關(guān)系。
- 邊框的繪制流程:
① 通過顏色填充繪制圖元的基本形狀;
② 開啟多邊形偏移,并設(shè)置偏移量(圖層與圖層之間設(shè)置間隙,才能渲染黑色邊框);
③ 開啟抗鋸齒功能,讓渲染的邊框線更加光滑,不會顯得太突兀;
④ 開啟顏色混合,設(shè)置混合因子(平面和邊框的顏色不同);
⑤ 設(shè)置邊框繪制模式和邊框的寬度(繪制線框幾何黑色版三種模式:實(shí)心、邊框、點(diǎn);可以作用在正面、背面或者兩面);
⑥ 繪制并填充邊框;
⑦ 還原設(shè)置(通過調(diào)用glPolygonMode將多邊形正面或者背面設(shè)為全部填充模式); - 具體代碼:
總結(jié)
以上是生活随笔為你收集整理的OpenGL之图元描边的绘制流程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: OpenGL之裁剪与颜色混合
- 下一篇: OpenGL之矩阵变换的原理分析与数学推