2010-08-15 558 views
1

我有一個精靈,我動畫使用CCAnimate。動畫由4張spritesheets組成,我需要時進行交換。當交換Spritesheet時,除了閃爍之外,一切工作都很好。Cocos2d動畫閃爍

關於該怎麼做的任何想法?

回答

1

我發現了一個解決方案,如果有人感興趣。

在CCAnimation對象之間切換時,它似乎是一種滯後,這使得幀在一瞬間變爲空白。解決方法是在拋棄舊的動畫之後立即手動將精靈設置爲即將到來的動畫的第一幀。

更多的信息在這裏: http://www.cocos2d-iphone.org/forum/topic/8729

+0

我還沒有遇到過,但我期待。謝謝。 – Justin 2010-08-16 15:44:17

0

你使用預裝CCTextureCache的addImage的spritesheets?如果不是這樣,每當您第一次切換到spritesheet時,您都會發現延遲。另外,除非你的Spritesheet太大以至於你不能將所有的動畫放到1024x1024的紋理中,否則你應該把所有的精靈放到一張表中,而不是像4個256x256的spritesheet那樣使用多個。你很難從中得到任何好處,最壞的情況是你失去了spritesheets的好處,因爲只要你從兩張不同的spritesheet中渲染出來,它將會是兩次平局,而不是一次。紋理圖集不是用於組織您的動畫,而是儘可能地將所有圖形保留爲儘可能少的紋理。

+0

我的動畫太大,無法放入一個1024x1024,這就是爲什麼我使用4個spritesheets。 我一直在使用CCSpriteFrameCache的addSpriteFramesWithFile在我的介紹場景中加載我的spritesheets,我看到它使用addImage,所以我猜這是相同的。 我想知道addImageSync以及如何使用它與addSpriteFramesWithFile,任何想法?我目前正在承受長時間的加載時間...... – 2010-08-30 16:21:58