我用默认的新游戏项目做了一个游戏,然后插入了一个普通的UIView作为应用程序的介绍场景。因为'升级'了介绍,因此使用SKScene,并使用按钮将原始gameViewController推入堆栈。一旦游戏视图被加载,它似乎有点迟缓,所以我假设这是与2个完整的skscenes和视图控制器的开销。我甚至设置了着陆场景暂停,但它显然仍然使用内存!处理多个SKScenes的最佳方法是什么?
我的问题是,我如何使用SKScene作为着陆页(使用它自己的LandingViewController),然后有效地将GameViewController添加到堆栈。我试过合并2个视图控制器,但这似乎是一个愚蠢的做事方式。
当前设置:
LandingViewController
|-LandingScene
GameViewController
|- GameViewScene
|- Other Game Classes
应用处进入LandingViewController其中inits的LandingScene(和降落UI精灵)。 LandingViewController处理触摸事件,如按钮等。当新游戏被点击时,GameViewController被推送(当前使用Segue)和GameViewController进入它的场景,游戏状态,UI,游戏板等.GameViewController处理触摸事件的场景。当游戏结束时(点击结束游戏或游戏结束状态),GameViewController弹出。
LandingViewController和GameViewController都控制着它们的动画和点击流等,所以GameViewController可以做游戏逻辑,就像下一个回合结束游戏等一样。 任何帮助或指针将不胜感激,因为我想这样做是正确的!
嗯,你能指定什么是滞后于你吗?除非你不断地释放和更新资源,否则使用大量内存不会造成滞后,所以你可能还有其他的事情你不知道。 – Knight0fDragon
我在GameScene上移动的精灵反应较慢并且动画较慢。这只有一次我有了2个景观的场景。我不会根据@Whirlwind – Designer023