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