处理在SpriteKit中留下屏幕区域的精灵

时间:2017-06-18 19:16:41

标签: ios swift sprite-kit sprite

我正在构建一个平台游戏,我也在努力学习如何提高内存和cpu周期的效率。有没有一种有效的方法来处理屏幕外的精灵?

我想这个想法是,只处理屏幕上的精灵或靠近它,所有其他精灵都可以不考虑释放那些精灵会采取的处理。

我有一个所有精灵的数组,所以我的第一个想法是仔细查看它们并查看相机是否包含每个......如果是这样的话,将它们作为一个孩子添加到屏幕上。如果相机不包含精灵,则将其从父级中移除......

我遇到的问题是,即使在屏幕上,我的角色也会消失,我无法移动他......我是不是想错了?

感谢您的任何建议!!!

更新:“我现在不在我的电脑上,所以语法可能有点偏离”

for sprite in allSprites {
    if camera.contains(sprite) {
        sprite.removefromparent()
        self.addChild(sprite)
    }
    else {
        sprite.removefromparent()
    }
}

当我回到家时,我可以将其更新为准确的代码,并打印视图和场景大小。

0 个答案:

没有答案