2012-01-09 51 views
1

我知道如何在cocos2d中畫一個圓&我知道如何用ccsprite(從png文件加載)做cocos2d動畫(縮放和淡入淡出)。Cocos2d:如何使繪製的圓做縮放或淡出動畫

但我想知道是否有可能以某種方式存儲繪製的圓圈(在繪製函數中),並使用它做動畫,就像我們通常用ccsprite做的那樣。

感謝

回答

1

有一個在你的動畫的內部運作,你應該能夠拼湊休息。

例如,看看CCScaleTo。如果你看看它的update:函數,它所做的只是改變它連接的CCNode的規模。

您應該通過擴展CCSprite(或CCNode)並覆蓋draw函數來製作您的圈子。在這裏您可以撥打super來處理翻譯,或者如果您需要更多控制權,您應該自己修改您的翻譯矩陣,以便在OpenGLES中考慮位置,旋轉和縮放比例(例如glScalef(x, y, z))。

-(void) draw 
{ 
    [super draw]; 
    //Your draw code for the circle. 
} 
+0

聽起來像我所需要的。這個新類將擴展CCSprite與z順序一起工作嗎?例如。的NewClass:CCSprite {...}; NewClass myCircle; [self addChild:myCircle z:10];新圓的z順序應該有一個10階的z順序? – Gob00st 2012-01-09 11:47:51

+0

我不明白爲什麼這是行不通的 – 2012-01-09 12:46:01