2011-07-23 190 views
3

我有一些動畫「怪物」的遊戲。動畫是爲每個怪物製作〜20 png的圖片。所以我使用UIImageView並設置了animationImages:iOS動畫效果

問題是,有時屏幕上可能會出現很多怪物(總共多達110個,最多10個不同)。所以當他們都在屏幕上同時 - 我看到動畫問題(非常低fps)。

請你能給我一些建議 - 我該如何解決這個問題?

回答

2

您可以使用CoreAnimation,如this教程中所述。它很好地解釋了你可以使用的所有技術來提高現在的性能(首先它不使用UIViews和標準animationImages,其次它使用了精靈(也稱爲紋理地圖集),它不僅提高性能,但在管理圖像資源方面也會讓您的生活更輕鬆)。

也可以使用CADisplayLink創建一個game loop,您可以在其中進行所有更新。這裏有幾個關於SO的問題/答案來描述這一點。

+0

使用CoreAnimation不會解決CPU使用率問題,爲此,您需要先將PNG圖像解碼爲磁盤。然後,直接從磁盤加載已解碼的像素數據,以限制CPU使用率。如果你一次有很多很多的動畫,那麼這就是你如何使它們平滑和無閃爍。 – MoDJ