更快地删除Sprite

时间:2015-10-28 14:52:03

标签: swift sprite-kit collision-detection skphysicsbody enumerate

我正在开发一款能够不断向左移动大量精灵的应用。一旦精灵离开屏幕,就会移除精灵,并在屏幕右侧轻微移动精灵。

目前,我有一个计时器,每0.05秒调用一次更新功能。在更新函数中,我使用enumerateChildNodesWithName(" *")来查找已经离开屏幕左侧的任何精灵,然后我删除它们并添加更多精灵。 enumerateChildNodes必须运行大约300个精灵,每0.05秒删除/添加大约8个精灵。

现在我正在考虑做的是在屏幕的左侧添加一个物理体(边界),这样当精灵与这个物理体接触时,它们就会被移除,并且会添加更多的精灵。

我已经定时了enumerateChildNode选项并且它的执行时间非常短,但如果物理主体(边界)的执行速度更快,我更喜欢使用它,但是我很喜欢我不确定如何计算时间。 此外,我的应用程序目前表示它使用高电池电量,所以我不知道物理机构(边界)选项是否可以减少这种情况或使其变得更糟。

有人知道哪个选项更好,或者是否有更好的选项,那么这两个选项都可以删除精灵?或者,是否有人知道我将如何测试物理体(边界)选项的性能?

0 个答案:

没有答案