2

我正在 AndEngine Gles2 中开发游戏。我有飞溅场景、加载场景、菜单场景和 Level1 场景。我正在使用屏幕管理器来管理所有场景,通过这些场景我可以轻松地在启动画面、加载和菜单场景之间切换,level1 场景也完美地从菜单加载,但是当我在完成关卡、屏幕后返回菜单场景时出现问题变成黑色,之后没有任何显示。我认为问题在于卸载Level1的资源,因为其他场景之间的切换非常完美。我不能给出完整的代码,因为它太长了。

我正在使用 bitmapTexture 区域、Sprites、bodys、物理 Word、hud 和固定装置等。这是我的卸载方法.. 当我在 1 级屏幕结束时加载菜单场景时,还有 1 件事变成黑色,但播放的音乐和所有日志都显示在我在菜单场景中设置的 logcat 中。

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

请任何帮助...

4

2 回答 2

0

我认为卸载纹理会给您带来问题。

根据我的意见,在加载场景时加载游戏的所有图形。然后不要卸载图形。我想说只有每个级别都在变化的游戏场景图形只需要卸载并再次加载它。

不要卸载所有图形并再次加载。只加载一次为游戏修复并保存在设备的图形内存中。

图形内存溢出会产生这种异常行为。

于 2013-03-12T16:36:03.967 回答
0

我认为你的问题在这里

BitmapTextureManager.getInstance().destroyInstance();

返回菜单场景时是否重新初始化纹理资源?因为听起来好像一切正​​常,但你的纹理被破坏了。

于 2013-03-05T23:32:29.887 回答