2017-02-20 92 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