哈拉哈啦
哈拉哈啦
全部文章
OpenGL ES
Andoird(2)
Android音视频开发(2)
flutter(2)
归档
标签
去牛客网
登录
/
注册
Just a blog
做Android开发的彭于晏
全部文章
/ OpenGL ES
(共10篇)
OpenGL ES:相机预览添加滤镜效果
经过前面图片添加滤镜效果的实践,相机预览无非也就是将每一帧的bitmap放到OpenGL中去渲染。 所以很容易想到如下方案: 方案A 使用TextureView用于相机预览,TextureView表面再盖上一层GLSurfaceView用与OpenGL ES的渲染输出,从TextureVi...
2019-09-04
0
1323
OpenGL ES:基本形状的绘制(三角形、正方形、正方体)
三角形的绘制 编写顶点着色器和片段着色器代码 输入和输出:基于OpenGL的渲染流程,从而每个着色器都有输入和输出,这样才能进行数据交流和传递。GLSL定义了in和out关键字专门来达成这个目的。只要一个输出变量与下一个着色器阶段的输入匹配,它就会传递下去。 Uniform关键字:Unif...
2019-09-03
0
1130
OpenGL ES:视频加滤镜后导出
视频加滤镜播放: MediaCodec解码——>OpenGL es——> GLSurfaceView 视频滤镜合成导出: MediaCodec解码——>OpenGL es——> MediaCodec编码 大体来说就是OpenGL渲染后的输出不一样,需要使用编码器编...
2019-08-04
0
1429
OpenGL ES:学习总结
学习阶段(一):OpenGL es基础的学习 理论: OpenGL es渲染流程 着色器的编写 图元的绘制 VAO、VBO、EBO 纹理的绘制 矩阵变换 滤镜原理、卷积核 实践: 基本形状的绘制(三角形、正方形、正方体、圆) 纹理的绘制(绘制图片到...
2019-07-21
0
1597
OpenGL ES:EGL环境创建
在Android平台上,虽说系统自带的GLSurfaceView这个控件中已经帮我们创建好EGL环境了,一般来说使用GLSurfaceView就可以满足我们的需求了。 而当我们用不着GLSurfaceView的时候,那又如何自己创建EGL环境呢?因此就来探究下 EGL环境的创建。 在Java层,...
2019-07-19
0
1150
OpenGL ES:缓冲对象(VBO、VAO、EBO)
顶点缓冲对象(Vertex Buffer Objects,VBO) 顶点缓冲对象VBO是在显卡存储空间中开辟出的一块内存缓存区,用于存储顶点的各类属性信息,如顶点坐标,顶点法向量,顶点颜色数据等。在渲染时,可以直接从VBO中取出顶点的各类属性数据,由于VBO在显存而不是在内存中,不需要从CPU传...
2019-07-14
0
1428
OpenGL ES:配合MediaCodec硬解码渲染(视频加滤镜播放)
注意点: MediaCodec 解码后的原始数据,格式为yuv,而OpenGL所能渲染的格式为rgb,因此我们需要使用扩展库中的扩展纹理 GLES11Ext.GL_TEXTURE_EXTERNAL_OES 而它的作用就是实现YUV格式到RGB的自动转化。 uniform sa...
2019-07-11
0
3715
OpenGL ES:注意点
只申明一个采样器默认激活了采样单元并且绑定了。 声明俩个或俩个以上需要将采样器绑定到相应的采样单元并激活再进行纹理的绑定。 //x代表采样器要绑定的纹理单元序号 GLES30.glUniform1i(GLES30.glGetUniformLocation(mProgram,...
android
OpenGL es
2019-07-03
0
796
OpenGL ES:滤镜效果(黑白、4宫格、放大)
正如我们所知,我们对OpenGL es 的操作也只是编写相应的着色器从而达到相应的图形或纹理。 而所谓的滤镜也只是通过对着色器的编写,也是对某个像素或坐标做特定的一些变换,从而达到滤镜的效果。 通过前面对顶点着色器、片段着色器、纹理的学习之后,也对OpenGL es有了一定的了解。 可通用的顶...
2019-07-03
0
1446
OpenGL ES:矩阵变换(平移、旋转、缩放)
总的变换矩阵: mvpMatrix = projectionMatrix * viewMatrix * modelMatrix; 投影矩阵(projectrionMatrix): //根据屏幕宽高计算 float ratio = (float) width / height; ...
2019-07-01
0
2067