Android OpenGL ES 從入門到精通系統性學習教程

爲什麼要寫這個教程

目前這個 OpenGL ES 極簡教程的更新暫時告一段落,說是教程,其實自知有種吹噓的味道,很榮幸獲得了阮一峯老師的推薦。

因爲在工作中頻繁使用 OpenGL ES 做一些特效、濾鏡之類的效果,加上平時學到的的知識點也比較細碎,就想着去系統地學習下 OpenGL ES 相關開發知識,並將學習過程記錄下來。

另外,這個 Android OpenGL ES 極簡教程主要是爲音視頻開發做準備的。

準備知識

一些同學反映,學習這個教程感覺有點門檻。其實,就是需要懂一些 Android 開發和 C/C++ 開發知識。

在本公衆號:字節流動,後臺回覆 1024 即可獲取相關的視頻教程,裏面有 2 個章節是關於 C/C++ 基礎和 NDK 開發知識的講解。

基礎篇和應用篇

該教程分爲基礎篇和應用篇,基礎篇主要是講解 GLES 3.0 的主要核心知識點,而應用篇主要是利用基礎篇的知識實現一些常見的特效和功能。

基礎篇

OpenGL ES 3.0 開發(01):繪製一個三角形

OpenGL ES 3.0 開發(02):紋理映射

OpenGL ES 3.0 開發(03):YUV 渲染

OpenGL ES 3.0 開發(04):VBO、EBO 和 VAO

OpenGL ES 3.0 開發(05):FBO 離屏渲染

OpenGL ES 3.0 開發(06):EGL

OpenGL ES 3.0 開發(07):Transform Feedback

OpenGL ES 3.0 開發(08):座標系統

OpenGL ES 3.0 開發(09):光照基礎

OpenGL ES 3.0 開發(10):深度測試

OpenGL ES 3.0 開發(11):模板測試

OpenGL ES 3.0 開發(12):混合

OpenGL ES 3.0 開發(13):實例化(Instancing)

OpenGL ES 3.0 開發(14):粒子(Particles)

OpenGL ES 3.0 開發(15):立方體貼圖(天空盒)

OpenGL ES 3.0 開發(16):相機預覽

OpenGL ES 3.0 開發(17):相機基礎濾鏡

OpenGL ES 3.0 開發(18):相機 LUT 濾鏡

OpenGL ES 3.0 開發(19):相機抖音濾鏡

OpenGL ES 3.0 開發(20):3D 模型

OpenGL ES 3.0 開發(21):3D 模型加載和渲染

OpenGL ES 3.0 開發(22):PBO

應用篇

OpenGL ES 實現動態(水波紋)漣漪效果

OpenGL ES 實現 3D 阿凡達效果

OpenGL ES 實現刮刮卡和手寫板功能

OpenGL ES 實現實時音頻的可視化

OpenGL ES 實現大小頭和頭部晃動效果

OpenGL ES 實現瘦臉大眼效果

OpenGL ES 繪製貝塞爾曲線

OpenGL ES 實現瘦身大長腿效果

OpenGL ES 實現心動特效

下一階段更新預告

有些剛進來的同學說,“我是來學習音視頻開發的,你老是更新 OpenGL 是什麼鬼?”

所以,基於以上需求該教程的更新暫時告一段落,不過後面還會有一些重要知識點會更新上去,如 HardwareBuffer 等。

學習音視頻開發,FFmpeg 是一個必須要掌握的開源工具,熟悉和掌握它,對學習整個音視頻開發知識的脈絡非常有幫助。

基於上述我們掌握的 OpenGL 開發知識,再利用 FFmpeg 開源庫強大的音視頻處理功能,我們可以輕易實現視頻播放和錄製,接下來我們將以 FFmpeg 開發爲基礎逐步去熟悉音視頻開發的知識脈絡。

下一階段【字節流動】公衆號的更新內容大致如下:

  1. FFmpeg 開發(01):FFmpeg 編譯和集成
  2. FFmpeg 開發(02):FFmpeg + OpenSL ES 音頻解碼播放
  3. FFmpeg 開發(03):FFmpeg + OpenGL ES 視頻解碼播放
  4. FFmpeg 開發(04):實現音視頻同步的三種方式
  5. FFmpeg 開發(05):基於 FFmpeg + OpenSL ES + OpenGL ES 實現一個播放器
  6. FFmpeg 開發(06):基於 OpenGL ES 實現播放器濾鏡
  7. FFmpeg 開發(07):FFmpeg + AudioRecorder 音頻編碼
  8. FFmpeg 開發(08):FFmpeg + Camera 視頻編碼
  9. FFmpeg 開發(09):FFmpeg 音視頻編碼合成 MP4 文件

聯繫與交流

聯繫我

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