私は SpriteKit を使用したゲーム開発は初めてで、これまでのところすべて問題ありませんでしたが、メモリ管理の部分は実際にはできません。
レベル セレクターとして機能する最初の UIViewController を作成し、ゲームの SKScene を表示する 2 つ目の UIViewController を作成しました。SKScene からレベル セレクターに戻ると問題が発生し、メモリが解放されません。
ゲーム SKScene から、ユーザーが戻るボタンを押してレベル セレクターに移動すると、2 番目の UIViewController にセグエを実行するように指示する通知を投稿します。
//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 をメモリから解放する必要があるかについて、理解を深めることができますか?