Cocos2d-x 动画速度的控制

转自:http://blog.csdn.net/zhy_cheng/article/details/8426332

 

在前面的博文中,介绍过动画,但是没有提过动画速度控制。

动画速度控制就是动画在什么时候快,什么时候慢。

现在先来学习两个英语单词

ease:安逸,悠闲。在下面的API中,应该理解为慢。

exponential:指数的。指数级增长,这个增长速度就是很快了,比线性增长还要快。在下面的API中,就是极快的。

CCEaseIn - 由慢至快(速度线性变化),在开始时慢
CCEaseOut - 由快至慢,后来慢
CCEaseInOut - 由慢至快再由快至慢,开始时和后来慢
CCEaseSineIn - 由慢至快(速度正弦变化)
CCEaseSineOut - 由快至慢
CCEaseSineInOut - 由慢至快再由快至慢
CCEaseExponentialIn - 由慢至极快(速度指数级变化)
CCEaseExponentialOut - 由极快至慢
CCEaseExponentialInOut - 由慢至极快再由极快至慢
上面的说明是很详细。下面来试一试

[cpp]  view plain copy
  1. CCSprite *s=CCSprite::create("sprite.png");
  2. s->setPosition(ccp(0,0));
  3. addChild(s);
  4. CCActionInterval *move=CCMoveBy::create(3,ccp(450,290));
  5. CCActionInterval *a=CCEaseIn::create(move,//传递一个CCActionInterval指针
  6. 2//速率,确定速度变化的快慢
  7. );
[cpp]  view plain copy
  1. CCSprite *s=CCSprite::create("sprite.png");  
  2. s->setPosition(ccp(0,0));  
  3. addChild(s);  
  4.   
  5. CCActionInterval *move=CCMoveBy::create(3,ccp(450,290));  
  6.   
  7. CCActionInterval *a=CCEaseIn::create(move,//传递一个CCActionInterval指针  
  8.     2//速率,确定速度变化的快慢  
  9.     );  


第二个参数应该大于1,可以根据自己的需要来调整。

你可能感兴趣的:(Cocos2d-x 动画速度的控制)