为什么要写这个教程
因为在工作中频繁使用 OpenGL ES 做一些特效、滤镜之类的效果,加上平时学到的的知识点也比较细碎,就想着去系统地学习下 OpenGL ES 相关开发知识,并将学习过程记录下来。
准备知识
一些同学反映,学习这个教程感觉有点门槛。其实,就是需要懂一点 C/C++ 开发知识。
基础篇和应用篇
该教程分为基础篇和应用篇,基础篇主要是讲解 GLES 3.0 的主要核心知识点,而应用篇主要是利用基础篇的知识实现一些常见的特效和功能。
基础篇
OpenGL ES 3.0 开发(04):VBO、EBO 和 VAO
OpenGL ES 3.0 开发(07):Transform Feedback
OpenGL ES 3.0 开发(13):实例化(Instancing)
OpenGL ES 3.0 开发(14):粒子(Particles)
OpenGL ES 3.0 开发(15):立方体贴图(天空盒)
OpenGL ES 3.0 开发(18):相机 LUT 滤镜
OpenGL ES 3.0 开发(21):3D 模型加载和渲染
OpenGL ES 3.0 开发(23):多重渲染目标(MRT)
OpenGL ES 3.0 开发(24):帧缓冲区位块传送(Blit)
OpenGL ES 3.0 开发(25):TBO(GLES 3.1)
OpenGL ES 3.0 开发(26):UBO(GLES 3.2)
应用篇
面试中经常被问到的 OpenGL ES 对象,你知道的有哪些?
使用 OpenGL 实现 RGB 到 YUV 的图像格式转换
OpenGL ES + GLTranslations 实现各种图像转场效果
OpenGL ES 利用 Shader 实现 RGBA 到 NV21 图像格式转换
OpenGL ES 3.0 帧缓冲区失效 glInvalidateFramebuffer