2012-01-09 71 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