我已經創建了一個簡單的iPhone遊戲,用戶在丟失遊戲後重定向到另一個視圖,並可以「再次開始」再次播放。iOS和SpriteKit - 重新啓動遊戲後的低fps
當遊戲開始時它運行平穩,它有大約60 fps,問題開始時,他失去了遊戲和明星。
GameViewController.swift
override func viewDidLoad() {
super.viewDidLoad()
if let scene = GameScene(fileNamed:"GameScene") {
/*
... some code ...
*/
scene.gameOverFunc = gameOverScreen
skView.presentScene(scene)
}
}
func gameOverScreen(){
let skView = self.view as! SKView
skView.presentScene(nil)
dispatch_async(dispatch_get_main_queue()){
self.performSegueWithIdentifier("gmov", sender: self)
}
}
GameScene.swift
func gameOver(){
/*
... some code ...
*/
if let gmovFunc = gameOverFunc {
gmovFunc()
}
}
override func update(currentTime: CFTimeInterval) {
gameOver()
}
我已經設置從一個SEGUE 「遊戲結束」 屏幕GameViewController。 每次新遊戲後,遊戲的表現都會下降。 在離開「遊戲結束」屏幕之前,我是否必須銷燬SKScene的實例?
這可能是對你有意思:http://stackoverflow.com/questions/34052659/memory-increase-in-spritekit-even-though-removeallchildren-called – Stefan