我在android中使用 libgdx 开发游戏。我处理了游戏结束时使用的所有纹理(win-lose-restart)但我的vm没有被清除。我试过了
gl.glDeleteTextures(1, textureHandle, 0);
我处理所有纹理,世界,物体等。但是vm大小是相同的。由于这个问题,我在玩了几个级别后得到 OutOfMemoryException 。
答案 0 :(得分:1)
您使用什么libgdx API来加载纹理?默认情况下,libgdx将管理纹理内存,以便在应用程序暂停时将纹理重新加载到视频RAM中。 请在此处查看有关上下文丢失的badlogic博客文章:http://www.badlogicgames.com/wordpress/?p=1073
这意味着您需要告诉libgdx释放纹理,而不是直接告诉OpenGL释放纹理。请参阅Texture.dispose()。