我是使用 SpriteKit 进行游戏开发的新手,到目前为止一切正常,但不能真正实现内存管理部分。
我创建了第一个 UIViewController 来充当关卡选择器,第二个 UIViewController 在其中呈现游戏的 SKScene。当我从 SKScene 返回到级别选择器并且没有释放任何内存时,就会出现问题。
在游戏 SKScene 中,当用户按下后退按钮转到关卡选择器时,我会发布一条通知,告诉第二个 UIViewController 执行 segue。
//SKScene
[self removeAllActions];
[self removeAllChildren];
[self removeFromParent];
[[NSNotificationCenter defaultCenter]postNotificationName:@"toLevelSelector" object:nil userInfo:nil];
//Second UIViewController
- (void)toLevel:(NSNotification *)notif
{
[self performSegueWithIdentifier:@"toLevelSelector" sender:self];
}
您能否帮助我更好地了解 skview 或 skscene 应该在何时何地从内存中释放?