2012-09-01 71 views
2

我正在AndEngine Gles2中開發遊戲。我有飛濺場景,加載場景,菜單場景和Level1場景。我正在使用屏幕管理器來管理所有場景,通過這些場景我可以輕鬆地在閃屏,加載和菜單場景之間進行切換,level1場景也可以從菜單中完美加載,但是當我返回菜單場景時會出現問題,如完成關卡,屏幕之後變成黑色,沒有任何表現。我認爲問題在於卸載Level1的資源,因爲其他場景之間的切換是完美的。我無法給出完整的代碼,因爲它很長。如何在AndEngine中更改場景

我使用bitmapTexture區域,精靈,機構,物理字,平視顯示器和夾具等 這裏是我的卸載方法.. 1個更多的時候我裝菜單場景中的1級屏幕變黑年底的事,但播放的音樂和所有日誌都顯示在我設置在菜單場景中的logcat中。

unload(){ 
setChildrenIgnorUpdate(); 
clearChildScene(); 
clearEntityModifier(); 
clearTouchAreas(); 
clearUpdateHandler(); 
BitmapTextureManager.getInstance().destroyInstance(); 
destroyPhysics(); 
} 

請任何幫助......

回答

0

我覺得你的問題是在這裏

BitmapTextureManager.getInstance().destroyInstance(); 

你重新初始化紋理資源,當你回到菜單場景?因爲聽起來好像一切正​​常,但你的紋理被破壞了。

0

我認爲卸載紋理會給你帶來問題。

根據我的意見,加載場景時加載遊戲的所有圖形。然後不要卸載圖形。我想說的是,只有遊戲場景圖形在每個級別上改變,只需要卸載並重新加載。

請勿卸載所有圖形並重新加載。只加載一次,修復遊戲並保存在設備的圖形內存中。

圖形內存溢出會導致此類異常行爲。