eglSwapBuffers failed: EGL_BAD_ALLOC AndEngine Android

…衆ロ難τιáo~ 提交于 2019-12-03 08:07:51

This error can occur when you don't notify the GLSurfaceView about state transistions of your Activity. See the following paragraph from here: http://developer.android.com/reference/android/opengl/GLSurfaceView.html

Activity Life-cycle

A GLSurfaceView must be notified when the activity is paused and resumed. GLSurfaceView clients are required to call onPause() when the activity pauses and onResume() when the activity resumes. These calls allow GLSurfaceView to pause and resume the rendering thread, and also allow GLSurfaceView to release and recreate the OpenGL display.

I don't know how andengine handles this though.

In my experience (which is specific to my Samsung Note, and no other Android device I've tested so far), is that EGL_BAD_ALLOC will be incorrectly produced by eglSwapBuffers() instead of EGL_BAD_CURRENT_SURFACE. If your code handles re-creating the surface, it should be trivial to handle this obscure case as well.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!