這篇文章開始, 我們一起來學習一下OpenGL ES, 首先學寫這個框架需要有一定的OpenGL基礎, 感興趣的可以看一下關于我之前寫的關于OpenGL的幾篇文章.
什么是OpenGL ES? 和OpenGL有什么聯系呢?
OpenGL ES只是OpenGL的簡化版本, 是已嵌入式設備為目標的高級3D圖形應用編程接口, 相當于是OpenGL的子集, 支持iOS和Andriod等系統使用.
頂點著色器
處理每個頂點的操作, 包括位置變換, 光照, 紋理坐標等處理.
頂點著?色器?之后,下?一個階段就是圖元裝配. 圖元(Primitive): 點,線,三?角形等.
圖元裝配
將頂點數據計算成一個圖元.在這個階段會執行裁剪、透視分割和 Viewport變換操作。
圖元類型和頂點確定將被渲染的單獨圖元。對于每個單獨圖元及其對應的頂點,圖元裝配階段執行的操作包括:將頂點著色?的輸出值執?裁剪、透視分割、視口變換后進入光柵化階段。
光柵化
在這個階段繪制對應的圖元(點/線/三角形). 光柵化就是將圖元轉化成一組?維?段的過程. 而這些轉化的片段將由片元著??處理.這些?維?段就是屏幕上可繪制的像素.
片元著色器
處理每一個像素點的顏色和紋理填充.
逐片段操作(了解即可)
以上所有步驟只有頂點著色器和片元著色器是我們可以用代碼控制的.
下一篇文章我們來簡單了解一下蘋果為我們封裝的GLKit的簡單使用.