Android OpenGL ES 1.基礎概念

基本圖形

光柵化流程圖

從上面的渲染流程我們可以知道,GL中是先繪制好圖形的輪廓,再將顏色、圖案繪制到這個輪廓上的,所以,能畫什么樣的圖形至關重要。OpenGL ES中,只提供了3種基本圖形:點、線、三角形。而其他我們熟知的圖形,都是基于這3種基本圖形處理拼接合成的。

2.0版本渲染流程

OpenGL展示到屏幕上的流程
整體上,我將7個流程步驟拆解成了3大部分:

  1. 確定頂點的位置,通過這些頂點繪制出指定的圖形
  2. 為圖形上色,可以是純色、漸變彩色或者是圖片紋理
  3. 緩沖與展示:將上述的圖形加載到幀緩沖區(qū)(FrameBuffer)中,再展示到屏幕上。
渲染管道

開發(fā)重點

雖然渲染流程有很多個步驟,但是我們在開發(fā)OpenGL相關內容時,重點則是在頂點著色器、片段著色器、將數(shù)據(jù)傳遞給著色器3個環(huán)節(jié)上

OpenGL ES開發(fā)重點

基本概念

  • PipeLine:渲染管道,是顯示芯片內部(GPU)處理圖形信號相互獨立的并行處理單元,也就是渲染流程。
  • Shader:著色器、渲染器,用于描述如何繪制圖形圖像的具體環(huán)節(jié)。分為頂點著色器、片段著色器
  • GLSL : OpenGL編寫著色器具體實現(xiàn)的編程語言,全稱 OpenGL Shader Language

OpenGL頂點坐標系

GL頂點坐標系

與Android中的Canvas或者屏幕坐標體系不同,GL的坐標起始位置在屏幕中心,(0,0)作為中心點,X坐標從左到右,Y坐標從下到上,在[-1,1]之間取值,再映射到屏幕上。而超出[-1,1]范圍的,將不會顯示在屏幕上。而無論屏幕是什么大小,什么形狀,坐標范圍都是不變的。如下圖。


頂點坐標系 - 變形

參考

Android OpenGL ES學習資料所列舉的博客、資料。

GitHub代碼工程

本系列課程所有相關代碼請參考我的GitHub項目GLStudio。

課程目錄

本系列課程目錄詳見 簡書 - Android OpenGL ES教程規(guī)劃

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容