Commit 9a366c38 authored by limingzhe's avatar limingzhe

fix: debug

parent ed9af3d6
...@@ -524,9 +524,9 @@ export default class middleLayer extends cc.Component { ...@@ -524,9 +524,9 @@ export default class middleLayer extends cc.Component {
// middleLayer.scale = canvas.width / middleLayer.width; // middleLayer.scale = canvas.width / middleLayer.width;
this.showCloseGameBtn(); this.showCloseGameBtn();
const destroyer = cc.instantiate(cc.find('middleLayer/Destroyer')); // const destroyer = cc.instantiate(cc.find('middleLayer/Destroyer'));
destroyer.parent = cc.find('Canvas'); // destroyer.parent = cc.find('Canvas');
destroyer.active = true; // destroyer.active = true;
callback && callback(); callback && callback();
...@@ -654,6 +654,7 @@ export default class middleLayer extends cc.Component { ...@@ -654,6 +654,7 @@ export default class middleLayer extends cc.Component {
}); });
} }
clearDragonDisplayAssetList() { clearDragonDisplayAssetList() {
console.log('喵喵喵: clearDragonDisplayAssetList'); console.log('喵喵喵: clearDragonDisplayAssetList');
console.log('喵喵喵: ' + this.nodeList.length); console.log('喵喵喵: ' + this.nodeList.length);
...@@ -679,6 +680,20 @@ export default class middleLayer extends cc.Component { ...@@ -679,6 +680,20 @@ export default class middleLayer extends cc.Component {
}); });
}; };
clearPrefabs(node) {
node.children.forEach(child => {
if (child._prefab && child._prefab.asset) {
let prefabAsset = child._prefab.asset;
child.destroy();
cc.assetManager.releaseAsset(prefabAsset);
cc.log("释放 Prefab:", prefabAsset._name);
}
// 递归处理
this.clearPrefabs(child);
});
}
// ----------------------------------------------- // -----------------------------------------------
...@@ -687,8 +702,10 @@ export default class middleLayer extends cc.Component { ...@@ -687,8 +702,10 @@ export default class middleLayer extends cc.Component {
cc.audioEngine.stopAll(); cc.audioEngine.stopAll();
this.getDragonDisplayAssetList(cc.find('Canvas')); this.getDragonDisplayAssetList(cc.find('Canvas'));
this.clearPrefabs(cc.find('Canvas'));
// this.getSpriteAssetList(cc.find('Canvas')); // this.getSpriteAssetList(cc.find('Canvas'));
const scene = cc.director.getScene();
if ( cc.assetManager.releaseUnusedAssets) { if ( cc.assetManager.releaseUnusedAssets) {
...@@ -703,6 +720,7 @@ export default class middleLayer extends cc.Component { ...@@ -703,6 +720,7 @@ export default class middleLayer extends cc.Component {
// destroyer.parent = cc.find('Canvas'); // destroyer.parent = cc.find('Canvas');
// destroyer.active = true; // destroyer.active = true;
this.clearDragonDisplayAssetList();
if (this.curBundle) { if (this.curBundle) {
this.curBundle.releaseUnusedAssets(); this.curBundle.releaseUnusedAssets();
...@@ -712,6 +730,7 @@ export default class middleLayer extends cc.Component { ...@@ -712,6 +730,7 @@ export default class middleLayer extends cc.Component {
} }
scene.destroy();
// 强制触发一次垃圾回收(主要是 js 对象) // 强制触发一次垃圾回收(主要是 js 对象)
cc.sys.garbageCollect(); cc.sys.garbageCollect();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment