我们使用OpenGL渲染图片或视频时,经常遇到图片或视频被拉伸而变形的情况。这种问题在线上产品中是必须要杜绝的,这篇文章我们就来看看该如何解决图片或视频被拉伸的情况。
OpenGL性能优化
课程中我已经将Shader的一些基本语法都向你介绍清楚了,这篇文章我们来聊聊OpenGL的性能优化。
我们使用GPU时,一个非常重要的优化点是CPU与GPU之间的数据传输。一个重要原则是:使用Shader时尽量不要在CPU与GPU之间频繁的传输数据。在CPU与GPU之间频繁的传输数据会大大降低程序的执行效率,严重时甚至不如直接使用CPU进行渲染。
为了解决这个问题,OpenGL为我们提供了几种优化方法,如VBO、EBO与VAO。每种方法都有其特定的应用场景,下面我们就分别讲解一下这几种方法该如何使用。
我们必须知道的光与色彩
OpenGL用到的线性代数
对于图形学来说,图形的各种变换,如放大、缩小、平移、旋转等,都可以通过矩阵的加法、减法、乘法来实现。今天我们就来看看如何通过矩阵的运算来实现图形的变换。
图形渲染管线及Shader编程
Android下OpenGL环境的创建
上一篇文章中我向你详细介了从Camera采集的视频帧是如何一步步在Android系统内部通过其显示系统展示出来的,那么今天我们再来聊聊在Android系统下该如何创建OpenGL环境。
OpenGL在Android系统下的工作原理
对于OpenGL新手来说,在Android下使用OpenGL进行视频、图像渲染,最最重要的是要清楚Android系统下它的显示系统是如何工作的。只有将其搞清楚,我们才能更好的、更正确的使用OpenGL对视频/图片进行渲染,才能更高效的进行各种特效处理。
那么今天,我们就来聊聊Android系统下的显示系统,看看它到底是如何工作的!
AI+OpenGL实现大眼特效
随着科技的发展,AI(人工智能)技术已经越来越成熟,尤其是ChatGPT的出现,更是将AI技术推向了一个新的高度。
实际上,早在很多年前AI技术就已经广泛的应用于我们的日常生活中了,比如人脸识别、车牌自动识别等等,而在各种美颜App、视频App中更是大量使用了AI技术。
AI技术的分支有很多,如基于传统机器学习的AI技术,基于深度学习的AI技术等,但现在大家无一例外的都选择了基于深度学习的AI技术,因为这种基于大数据自主学习的AI技术给人们带来了一个又一个惊喜,基本上只要你有足够多的数据,足够深网络,足够强的算力,它就可以给你带来足够好的结果!
日拱一卒--记OpenGL课程完结
时光荏苒!从 2017 年在慕课网推出第一门视频课《FFmpeg精讲》,到刚刚上线的《OpenGL+AI实现各种酷炫特效》转眼已经 6 年了。这期间,我录制了 8 门视频课,出版了一本书,还开了一个专栏。涉及音视频,网络传输,服务器开发,人工智能等多个方面,按一些同学的话说,我也算个高产“作者”了。
Android_OpenGL相关资料
这里记录了一些 Android 下使用 OpenGL 渲染视频的一些相关资料。