目前这个 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 开发为基础逐步去熟悉音视频开发的知识脉络。
下一阶段【字节流动】公众号的更新内容大致如下: