OpenGL學習筆記1:OpenGL概述

一、OpenGL概述

OpenGL:API,對圖形硬件設備特性進行訪問的軟件庫

二、圖形學名詞

1.渲染:計算機從模型創建最終圖像的過程。OpenGL就是一種基於光柵化的渲染系統。

2.模型:模型是通過圖元(點、線、三角形)構建的。

3.着色器:可看成專門爲GPU編譯的一種小型程序。最常用的有:頂點着色器,片元着色器

4.像素:顯示器上最小的可見單元,所有的像素都保存到幀緩存中。

三、渲染圖像的過程

1.從OpenGL的幾何圖元中設置數據,用於構建形狀。

2.使用不同的着色器(shader)對輸入的圖元數據執行計算操作,判斷位置、顏色及其他渲染屬性。

3.光柵化:將輸入圖元的數學描述轉化爲與屏幕位置對應的像素片元。

4.對每個片元執行片元着色器決定最終顏色、位置。

四、渲染管線

頂點 -> 頂點着色器 -> 細分控制着色器 -> 細分計算着色器 -> 幾何着色器 -> 圖元設置 -> 剪切 -> 光柵化 -> 片元着色器

1.頂點着色

  處理頂點相關的數據,可能非常簡單(傳遞着色器),可能十分複雜

2.細分着色

  進一步處理數據

3.幾何着色

  在光柵化之前對幾何圖元作進一步處理

4.圖元裝配

  將頂點與相關幾何圖元組織起來

5.剪切

  頂點落在視口之外時,對與頂點相關的圖元做出改動,以保證相關像素不在視口外。

6.光柵化

  將圖元轉換爲片元

7.片元着色

  由片元着色器(fragment shader)計算片元的最終顏色和深度值。

  頂點着色決定圖元的位置,片元着色決定片元的顏色。

8.逐片元操作

  使用深度測試(depth test,即Z buffering)和模板測試(stencil test)決定一個片元是否可見。

  若片元通過了所有的測試,則繪製到幀緩存中。

  若有融合模式(blending),則片元顏色與該像素當前顏色相疊加,寫入幀緩存。

  像素數據通常保存在紋理貼圖中。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章