2017-02-20 56 views
0

我有一个有多个灯光节点的场景。通常,我的游戏在2016年末Macbook Pro上以60fps运行良好。 (游戏是为Mac而不是iOS)。当光节点被添加时,帧速率下降,并且一旦有4-5个节点,它非常缓慢且迟缓。我喜欢这个创建它们:SKLightNodes在SpriteKit中导致帧率问题

let light: SKLightNode = SKLightNode() 
light.falloff = 4.5 
addChild(light) 

我知道灯光效果需要大量渲染力的,但我在他们的速度有多快导致的问题感到惊讶。

关于如何提高性能的任何想法?

回答

0

SKLightNodes的性能密集程度非常高,尤其是在较旧的设备上。

例如,如果您在iPhone 5上的1个SKScene中使用2个LightNodes,则帧速率将下降至20FPS,并使游戏基本无法播放。

我最近在一个场景中做了4个灯光的游戏,并且iPhone 7上的一切都很好,但在较旧的设备上它无法使用。

所以国际海事组织你不应该使用每个雪碧/场景超过1个SKLightNode,也许2最大,否则性能将是非常糟糕的。我不确定macOS上的性能如何,但是您使用4-5灯描述它的方式太过分了。所以,你可以做的不多,以提高性能。

SKLightNode performance issues

的WWDC会议视频什么SpriteKit的新提到,如果你有同样的精灵不止一个光你可能会小于60 FPS。

希望这会有所帮助

+0

嗯,好的,谢谢。我可能只需要为解决问题做一些技巧,因为我真的需要这些灯光。我可能会做一些事情,比如让背景变黑,因为将灯光效果添加到该节点似乎会导致最慢的速度。 – CodyMace

+0

是的,我必须对我的游戏做同样的事情。他们仍然不会在旧设备上运行良好。只要确保你测试好。快乐的编码 – crashoverride777