OpenGLES的简单应用绘图,以及照相机画面变色变形渲染(八)
来源:互联网 发布:明星淘宝店叫什么名字 编辑:程序博客网 时间:2024/05/20 15:12
基础8——相机预览(GLSurfaceView+OpenGLES)
初始化都完成后,要开始真正的相机预览功能了。
相机预览通过GLSurfaceView的扩展继承类CameraGLSurfaceView
在扩展继承类CameraGLSurfaceView的构造器中:
设置OpenGLES版本
设置渲染器Renderer
设置渲染器Renderer的模式。
在重写方法onSurfaceCreated中:
初始化纹理属性设置,返回一个纹理ID
初始化一个SurfaceTexture绑定着这个纹理ID,并设置数据变化监听
初始化形状顶点、颜色顶点buffer、着色器shader、包含并逻辑链接着shader的program
初始化相机
在重写方法onSurfaceChanged中:
开启相机预览
在重写方法onDrawFrame中:
OpenGL设置背景色
擦除当前帧画面
surfaceTexture更新数据
获得更新数据的转换矩阵
OpenGL重新获取program
OpenGL重新获取活动纹理
OpenGL重新绑定纹理
获得program中的shader句柄并进行相应操作
通过植入事先准备好的buffer进行绘制
在重写方法onPause中:
停止相机预览
在重写方法onFrameAvailable中:
this.requestRender();
调用该句,重新执行onDrawFrame方法
至此,相机便可通过GLSurfaceView和OpenGLES来预览了,之后的拍照、渲染滤镜、渲染后的拍照、以及放大缩小变换,在下面讲,代码会在最后附上。
上一节
1 0
- OpenGLES的简单应用绘图,以及照相机画面变色变形渲染(八)
- OpenGLES的简单应用绘图,以及照相机画面变色变形渲染(一)
- OpenGLES的简单应用绘图,以及照相机画面变色变形渲染(二)
- OpenGLES的简单应用绘图,以及照相机画面变色变形渲染(三)
- OpenGLES的简单应用绘图,以及照相机画面变色变形渲染(四)
- OpenGLES的简单应用绘图,以及照相机画面变色变形渲染(五)
- OpenGLES的简单应用绘图,以及照相机画面变色变形渲染(六)
- OpenGLES的简单应用绘图,以及照相机画面变色变形渲染(七)
- opengles的渲染管线
- opengles绘图(3)
- Canvas基础4-绘图的简单变形
- iOS中滤镜的使用(三)OpenGLES渲染
- Opengles绘图
- 实现简单的照相机
- Qt移动应用开发(八):实现跨平台的QML和OpenGL混合渲染
- OPENGL中简单点的理解以及关于照相机的简单理解
- canvas的简单绘图应用の刮刮乐
- ubuntu 杂谈(八)--- ubuntu 开机画面的设置
- vbs遍历文件夹中的文件和文件夹,及其子文
- 我们为什么需要SDN?
- 【亲测】Android ----waiting for debugger
- 深度优先搜索算法
- 39
- OpenGLES的简单应用绘图,以及照相机画面变色变形渲染(八)
- Android JNI 使用别人的.so类库(盗版美图秀秀)
- C# 反射
- 分区表 UDF
- [unity3D基础篇03]必备的3D数学基础2
- Java String intern方法介绍
- protobuf 嵌套消息的使用
- 深度学习——引用量最高的20篇论文(2014-2017)
- Linux Tomcat日志查看实用命令