2016-07-31 80 views
0

我想在我的遊戲中製作動畫空間背景,我嘗試使用spritekit上的節點「星星節點」,但由於恆星數量的限制,遊戲變得遲緩,有沒有任何程序或方法可以製作高清動畫背景?如何製作動畫spritekit背景?

+0

您目前單獨動畫您的每一個 「明星」?如果是這樣,你有沒有考慮將它們組合在一起,放在另一個SKNode中,然後爲該單個SKNode製作動畫?這應該會提高性能。 –

+0

是的,我有一個func讓他們隨機在屏幕上,但我怎麼可以合併他們在一個節點和動畫他們,我想要一些明星的動畫淡入,其他淡出 – RUON

+0

你可能會做有問題。創建一個帶有幾個星型的地圖集不應該是計算密集型的。確保你實際上堅持場景中的紋理,然後創建使用這些緩存紋理的SKNode對象。您的其他選項是提前創建動畫並製作一個用SKVideoNode渲染的H264視頻。 – MoDJ

回答

2

你只需要爲背景知道一個節點。

基本上,您創建動畫背景的每個幀作爲圖像。您可以將這些圖像放入資產目錄中的圖像圖集中。

現在,您可以添加一個覆蓋整個場景作爲「背景」的精靈節點。您只需將精靈節點的紋理設置爲動畫的第一幀。

然後,在didMoveToView或一些方法類似,

  1. 讓您的影像地圖集作爲SKTextureAtlas對象
  2. 使用textureNamed獲得寰每個紋理,並把他們每個人到[SKTexture]
  3. 現在你有陣列了,你可以這樣做:

-

yourBackgroundSprite.runAction(SKAction.repeatForever(
    SKAction.animateWithtextures(theTexturesYouCreatedInStep2, timePerFrame: 30) 
)) 

This link might also help you.

+0

謝謝:) ,,, – RUON

+0

應該使用什麼尺寸的背景圖片 - 尤其是如果它可能在不同的iPhone模型上? – Sam