Recubrimiento opengl en vista de cámara

Todavía no he encontrado una forma correcta de mostrar una superposición OpenGL en la parte superior de la vista previa de la cámara,

Hay un hack, donde usted llama

setContentView(GLSurfaceView) addContentView(MyCameraSurfaceView) 

Pero no funciona correctamente, es decir, cuando cambia a otra actividad y vuelve, la capa opengl no aparece en la vista previa de la cámara.

Hay un montón de tutoriales y muestras que utilizan el método anterior, pero simplemente no funciona como se esperaba

¿Alguien sabe cómo lo hacen en layar

Parece que he encontrado la solución a mi problema – su función setZOrderMediaOverlay , heres mi código:

 private void initViews() { mFrame = new FrameLayout(this); initCameraView(); initGLView(); setContentView( mFrame ); } private void initGLView() { mRenderer = new MyGLRenderer( this ); mGLView = new GLSurfaceView(this); mGLView.setZOrderMediaOverlay(true); mGLView.setEGLConfigChooser(8, 8, 8, 8, 16, 0); mGLView.setRenderer(mRenderer); mGLView.getHolder().setFormat(PixelFormat.TRANSLUCENT); mFrame.addView( mGLView ); } private void initCameraView() { mCameraSurfaceView = new CameraSurfaceView(this); mFrame.addView(mCameraSurfaceView); } 

¿Alguna vez consideró que al cambiar a otra actividad está perdiendo el contexto opengl de la superposición glsurface?

  • GLES2.0 - glDrawElements no funciona
  • Nexus 10 - renderizar a rendertarget externo sólo funciona en paisaje
  • GLSurfaceView que muestra negro en Nexus 7 con Android 4.2
  • Android OpenGL ES: auto-corrección env-> self y NvRmChannelSubmit fallaron
  • Dónde almacenar código de sombreado en la aplicación para Android
  • Android OpenGl 2.0 ES fuerza el reinicio del dispositivo
  • Vertex Shader no puede compilar. No puedo encontrar el error
  • GLES2.0: Usar GL_TEXTURE_EXTERNAL_OES a través de glEGLImageTargetTexture2DOES
  • Cómo dibujar círculo básico en OpenGL ES 2.0 Android
  • Utilizar glVertexAttribPointer y glDrawElements para extraer de un buffer de vértice empaquetado
  • ¿Es posible establecer un valor inicial para un uniforme de sombreado? (Android, OpenGL ES 2.0)
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.