¿Ejecutando la aplicación OpenGL en Android x86 y VirtualBox?

¿Ejecutando la aplicación OpenGL en Android x86 y VirtualBox?

Instalé con éxito Android x86 4.0 en VirtualBox y estoy intentando que funcione una aplicación OpenGL. He habilitado la "Aceleración 3D" en la configuración de VirtualBox, pero cuando abro la aplicación, se bloquea y se registra instantáneamente.

java.lang.IllegalArgumentException: No configs match configSpec

Probé la prueba 3D 0xbenchmark (0xbenchmark es una aplicación de prueba que viene con Android-x86). Funcionó perfectamente.EDITAR:No estoy seguro de por qué lo hace, porque ninguna otra aplicación OpenGL parece funcionar. Quizás Android-x86 en realidad no sea compatible con GLES 2.0

¿Qué puedo hacer para que todas las aplicaciones OpenGL funcionen en VirtualBox?

EDITAR:Omití incluir el seguimiento de la pila antes, así que aquí está (de logcat):

E/AndroidRuntime( 1681): FATAL EXCEPTION: GLThread 146
E/AndroidRuntime( 1681): java.lang.IllegalArgumentException: No configs match configSpec
E/AndroidRuntime( 1681):        at android.opengl.GLSurfaceView$BaseConfigChooser.chooseConfig(GLSurfaceView.java:863)
E/AndroidRuntime( 1681):        at android.opengl.GLSurfaceView$EglHelper.start(GLSurfaceView.java:1024)
E/AndroidRuntime( 1681):        at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1401)
E/AndroidRuntime( 1681):        at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1240)

Respuesta1

Después de una extensa búsqueda y pruebas encontré la solución. El problema es que los controladores de gráficos virtuales de VirtualBox no son totalmente compatibles con OpenGL. Lo que necesito es algo que pueda pasar la propia GPU de mi computadora al entorno virtual de Android. Encontré algo que puede hacer exactamente eso,androvm. Su versión de Android tiene controladores escritos personalizados para funcionar sin problemas en VirtualBox y viene con su propio reproductor que emula GLES utilizando la GPU física del host. Usando AndroVM y su reproductor, pude ejecutar con éxito todas las aplicaciones OpenGL.

información relacionada