gpt4 book ai didi

ios - 在 "game over"上的 Swift 中从场景移动到另一个 UIView 并处理场景?

转载 作者:行者123 更新时间:2023-11-28 13:13:15 26 4
gpt4 key购买 nike

我的游戏中有一个“生命计数器”,当它达到 0 = 死亡时 - 我想离开场景到另一个 UIView - 这是游戏结束 View - 带有统计数据和一个返回主页的按钮屏幕(第一个带有按钮的 UIViewController 来开始游戏等等。

这是我如何转到游戏结束 View 的代码

class GameScene: SKScene,SKPhysicsContactDelegate {
var viewController: UIViewController?
// more code and functions
// ......

func trackLife (lifeCHange: Int){
life = life + lifeCHange
lifeLabel.text = String(life)
if life < 1 {
// Go to Game Over VC
self.removeAllChildren()
self.removeAllActions()
self.scene?.removeFromParent()
self.viewController!.performSegueWithIdentifier("gameOverSegue", sender: viewController)

}
}
}

这适用于在 View 中呈现游戏,但我认为我不是在“处理”或重置场景。因为如果我循环执行此操作:

开始游戏 --> 游戏结束 --> 回到主屏幕 --> 开始游戏 --> 游戏结束....

我看到内存使用量在每个周期都在增长:)我想我只是添加场景而不是删除它们?

对不起 - 我对此很陌生。非常感谢您的体验!:)

最佳答案

要在 Sprite-Kit 中有效地管理您的内存,您应该为您的 GameOver 屏幕创建另一个 SKScene,以便从您的主屏幕呈现。这样,旧的SKScene就会被释放。

关于ios - 在 "game over"上的 Swift 中从场景移动到另一个 UIView 并处理场景?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30423126/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com