android中使用OpenGLES,有啥方法可以将texture反过来转化成Bitmap的方法没有
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android中使用OpenGLES,有啥方法可以将texture反过来转化成Bitmap的方法没有相关的知识,希望对你有一定的参考价值。
参考技术A 你可以先将GLES20环境里面的上下文设置好获取好之后就可以将GLSurfaceview 的输入texture 转给GLES20.
然后通过GLES20.glBindFrameBuffer(GLES20.GL_FRAMEBUFFER,framebuffer)
然后调用GLES20.glFrameBufferTexture2D(xx,xxx,xxx,inputtexture ,xxx)
IntBuffer intbuffer = new IntBuffer(previewWidth,previewHeight);
intbuffer.order(ByteOrder.little.ENDLAN);
intbuffer.rewind();
GLES20.glReadPixels(0,0,previewWidth,previewHeight,GLES20.GL_RED,GLES20.GL_UNSLGLED_BYTE,Intbuffer);
bitmap = Bitmap.createBitmap(bitmapSource, iw, ih, Bitmap.Config.ARGB_8888);
最后将bitmap = Bitmap.create(intbuffer,previewWidht,previewHeight,Bitmap.Config.ARGB_8888); 参考技术B 这个没有,只能是你在解析像素的时候存储起来追问
这不等于是用OpenGL的时候更加浪费内存吗?
追答为啥这么说,如果你非要这样子做的话就只能这样子了,ES本身没有提供相关的机制啊
以上是关于android中使用OpenGLES,有啥方法可以将texture反过来转化成Bitmap的方法没有的主要内容,如果未能解决你的问题,请参考以下文章
Android OpenGLES 实时美颜(磨皮)的优化(二)
有啥方法可以使用 shadowOpacity 在 react native for android 中?
Android,有啥方法可以禁用使用键盘在日期选择器内写入?