Android x86 및 VirtualBox에서 OpenGL 앱을 실행하시나요?

Android x86 및 VirtualBox에서 OpenGL 앱을 실행하시나요?

VirtualBox에 Android x86 4.0을 성공적으로 설치했으며 OpenGL 앱이 작동하도록 하려고 합니다. VirtualBox 설정에서 "3D 가속"을 활성화했지만 앱을 열면 즉시 충돌이 발생하고 로그가 기록됩니다.

java.lang.IllegalArgumentException: No configs match configSpec

0xbenchmark 3D 테스트를 시도했습니다(0xbenchmark는 Android-x86과 함께 제공되는 테스트 앱입니다). 완벽하게 작동했습니다.편집하다:다른 OpenGL 앱이 작동하지 않는 것 같아서 왜 그런지 잘 모르겠습니다. 아마도 Android-x86은 실제로 GLES 2.0을 지원하지 않을 수도 있습니다.

모든 OpenGL 앱이 VirtualBox에서 작동하도록 하려면 어떻게 해야 합니까?

편집하다:이전에 스택 추적을 포함하는 것을 무시했기 때문에 여기에 있습니다(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)

답변1

광범위한 검색과 테스트를 거쳐 해결책을 찾았습니다. 문제는 VirtualBox의 가상 그래픽 드라이버가 실제로 OpenGL을 완전히 지원하지 않는다는 것입니다. 나에게 필요한 것은 내 컴퓨터의 GPU를 안드로이드의 가상 환경에 전달할 수 있는 것입니다. 정확히 그렇게 할 수 있는 것을 찾았습니다.안드로VM. Android 버전에는 VirtualBox에서 원활하게 작동할 수 있는 맞춤형 드라이버가 포함되어 있으며 호스트의 물리적 GPU를 사용하여 GLES를 에뮬레이트하는 자체 플레이어가 함께 제공됩니다. AndroVM과 해당 플레이어를 사용하여 모든 OpenGL 앱을 성공적으로 실행할 수 있었습니다.

관련 정보