我正在使用spritekit开发游戏。我正处于开发游戏的最后阶段,但我遇到了内存和CPU使用方面的一些困难。我注意到CPU有时会超过100%,主要是当我按下重启按钮时。每次按下重启按钮,我的内存也会以0.3 MB的速度增加。第一个问题主要发生在我立即死于游戏中。我只有一个场景。
下面提供的图像来自分配仪器。当我按下重启按钮或开始游戏时会出现尖峰。 0.3 MB的增量位于调试导航器中。这两者有区别吗?
重启按钮代码:
重启按钮是SkspritNode
override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
for touch in touches {
let location = touch.location(in: self)
if restartbuttons.contains(location) {
let transition = SKTransition.fade(withDuration: 3)
let nextScene = GameScene(size: (self.scene?.size)!)
nextScene.scaleMode = SKSceneScaleMode.aspectFill
self.scene?.view?.presentScene(nextScene, transition: transition)
removeAllChildren()
removeAllActions()
removeFromParent()
}
}
}