2017-01-26 3 views
1

жаль, если этот вопрос будет очень расплывчато, но в последнее время пытался сделать игру на андроид студии, используя LibGDX с руководством отAndroid студии LibGDX

https://www.youtube.com/watch?v=rzBVTPaUUDg&list=PLZm85UZQLd2TPXpUJfDEdWTSgszionbJy

Все, кажется, прекрасно и хорошо, как это может запускать на рабочем столе, но когда я устал запускать игровое приложение на эмулятор Android, приложение не открывается вообще, и он мгновенно заявляет «Приложение завершено».

Чтобы как-то суммировать проблему, все, что создано на libgdx, отлично работает на рабочем столе, таком как youtuber, но когда мне нужно его запустить на эмуляторе Android, это не сработает.

Это сообщение об ошибке:

01/27 06:36:30: Launching android 
$ adb push C:\Users\Lenovo\Desktop\TestGame\TGame\android\build\outputs\apk\android-debug.apk /data/local/tmp/com.kyh.game 
$ adb shell pm install -r "/data/local/tmp/com.kyh.game" 

Success 

$ adb shell am start -n "com.kyh.game/com.kyh.game.AndroidLauncher" 
-a android.intent.action.MAIN -c android.intent.category.LAUNCHER 
Client not ready yet..Waiting for process to come online 
Waiting for process to come online 

Connected to process 2395 on device emulator-5554 
I/AndroidInput: sensor listener setup 
I/OpenGLRenderer: Initialized EGL, version 1.4 
D/OpenGLRenderer: Swap behavior 1 

        [ 01-26 22:37:34.185 2395: 2424 D/   ] 
        HostConnection::get() New Host Connection established 0x7f235f7cbd60, tid 2424 
W/GL2JNIView: creating OpenGL ES 2.0 context 
W/GL2JNIView: Returning a GLES 2 context 
E/EGL_emulation: tid 2427: eglSurfaceAttrib(1174): error 0x3009 (EGL_BAD_MATCH) 
W/OpenGLRenderer: Failed to set EGL_SWAP_BEHAVIOR on surface 0x7f2362271940, error=EGL_BAD_MATCH 
I/GL2: all initialized 2 
I/AndroidGraphics: OGL renderer: Android Emulator OpenGL ES Translator (Intel(R) HD Graphics 4600) 
I/AndroidGraphics: OGL vendor: Google (Intel) 
I/AndroidGraphics: OGL version: OpenGL ES 2.0 (4.3.0 - Build 10.18.14.4029) 
I/AndroidGraphics: OGL extensions: GL_EXT_debug_marker GL_OES_EGL_image 
GL_OES_EGL_image_external GL_OES_depth24 GL_OES_depth32 
GL_OES_element_index_uint GL_OES_texture_float GL_OES_texture_float_linear 
GL_OES_compressed_paletted_texture GL_OES_compressed_ETC1_RGB8_texture 
GL_OES_depth_texture GL_OES_texture_half_float GL_OES_texture_half_float_linear  
GL_OES_packed_depth_stencil GL_OES_vertex_half_float GL_OES_texture_npot 
GL_OES_rgb8_rgba8 ANDROID_EMU_CHECKSUM_HELPER_v1 
E/EGL_emulation: [getAttribValue] Bad attribute idx 
E/EGL_emulation: tid 2424: eglGetConfigAttrib(815): error 0x3004 (EGL_BAD_ATTRIBUTE) 
E/EGL_emulation: [getAttribValue] Bad attribute idx 
E/EGL_emulation: tid 2424: eglGetConfigAttrib(815): error 0x3004 
(EGL_BAD_ATTRIBUTE)  
I/AndroidGraphics: framebuffer: (5, 6, 5, 0) 
I/AndroidGraphics: depthbuffer: (16) 
I/AndroidGraphics: stencilbuffer: (0) 
I/AndroidGraphics: samples: (0) 
I/AndroidGraphics: coverage sampling: (false) 
I/AndroidGraphics: Managed meshes/app: { } 
I/AndroidGraphics: Managed textures/app: { } 
I/AndroidGraphics: Managed cubemap/app: { } 
I/AndroidGraphics: Managed shaders/app: { } 
I/AndroidGraphics: Managed buffers/app: { } 
Application terminated. 
+0

Возможно, потому что эмулятор не поддерживает OpenGL полностью. Вы пытаетесь работать на реальном устройстве? –

ответ

0

Согласно официальному OpenGL documentation,

glClear генерирует GL_INVALID_VALUE, если какой-либо бит, кроме трех определенных битов устанавливается в маске.

Итак, я бы дважды проверил ваше предложение glClear.

+0

Эй! спасибо за возвращение и публикацию для получения дополнительной информации о моей проблеме. Я размышлял о том, чтобы просто сдерживать создание игр с помощью libgdx на андроидских студиях, и сосредоточиться на том, чтобы научиться создавать простые приложения на студии Android. Спасибо за ваше время за чтение и жаль, что я решил отказать, когда вы предложили помощь – Rind

Смежные вопросы