Android OpenGL ES 从入门到精通系统性学习教程

该原创文章首发于微信公众号:字节流动

为什么要写这个教程

目前这个 OpenGL ES 极简教程的更新暂时告一段落,说是教程,其实自知有种吹嘘的味道,很荣幸获得了阮一峰老师的推荐。

因为在工作中频繁使用 OpenGL ES 做一些特效、滤镜之类的效果,加上平时学到的的知识点也比较细碎,就想着去系统地学习下 OpenGL ES 相关开发知识,并将学习过程记录下来。

另外,这个 Android OpenGL ES 极简教程主要是为音视频开发做准备的。

准备知识

一些同学反映,学习这个教程感觉有点门槛。其实,就是需要懂一些 Android 开发和 C/C++ 开发知识。

在本公众号:字节流动,后台回复 1024 即可获取相关的视频教程,里面有 2 个章节是关于 C/C++ 基础和 NDK 开发知识的讲解。

实现代码

关注微信公众号: 字节流动,后台回复: OpenGL教程,即可获取相关实现代码。

基础篇和应用篇

该教程分为基础篇和应用篇,基础篇主要是讲解 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 文件
    ......

联系与交流

有疑问或技术交流可以添加我的微信:Byte-Flow

联系我
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,390评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,821评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,632评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,170评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,033评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,098评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,511评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,204评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,479评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,572评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,341评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,893评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,171评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,486评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,676评论 2 335