2011-10-20 49 views
0

我正在開發一個遊戲,使用libgdx在android中。我在遊戲結束時處理所有使用的紋理(雙贏重啓),但我的vm未被清除。我試圖從紋理清除在libgdx從vm

gl.glDeleteTextures(1, textureHandle, 0); 

我處理所有紋理,世界,對象等,但VM大小是一樣的。由於這個問題,我得到OutOfMemoryException後幾個級別。

+1

如果你可以包含一段代碼來展示你如何加載和處理紋理,這將是有幫助的。另外,你有什麼證據表明它的紋理會佔用你的記憶? –

回答

1

你用什麼libgdx API來加載紋理?默認情況下,libgdx將管理紋理內存,例如,如果您的應用程序被暫停,它可以將紋理重新加載到視頻RAM中。 查看關於上下文丟失的badlogic博客文章:http://www.badlogicgames.com/wordpress/?p=1073

這意味着您需要告訴libgdx釋放紋理,而不是直接告訴OpenGL釋放紋理。請參閱Texture.dispose()

+0

問題固定在八月二十一日...我也處置了你說的紋理...感謝你的迴應 – Sathyapradeep