如何在发动机中正确销毁和重建场景?

时间:2012-05-24 15:42:46

标签: java android andengine

在andAngine中我需要在andangine中销毁一个场景并重新创建它以重新启动游戏变量和监听器以及gamelogic。 我使用这段代码:

scene.detachChildren();
scene.clearEntityModifiers();
scene.clearTouchAreas();
scene.clearUpdateHandlers();

System.gc();
thisengine.setScene(menuscene);

然后我重新创建场景

scene = new Scene();
scene.dosomestuff
thisengine.setScene(scene);

当我重新创建第三次场景时,似乎出现了问题。精灵不显示..扭曲或根本不显示。如果我正确初始化并破坏场景,有人可以向我解释吗?

1 个答案:

答案 0 :(得分:4)

就个人而言,我会在第一次使用时创建场景。

要更改场景,请按照您所示的方式执行删除操作,我不会打扰调用System.gc(),然后再创建新的Scene() - 只需调用scene.reset( ),scene.dosomestuff等

像你所展示的那样创建一个新的场景看起来像一个主要的内存泄漏,或者至少是一个可能的泄漏。