【Cocos2d-x游戏引擎开发笔记(16)】动画速度的控制

时间:2023-02-08 23:06:30

原创文章,转载请注明出处:http://blog.csdn.net/zhy_cheng/article/details/8426332

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

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

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

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

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

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

CCSprite *s=CCSprite::create("sprite.png");
s->setPosition(ccp(0,0));
addChild(s);

CCActionInterval *move=CCMoveBy::create(3,ccp(450,290));

CCActionInterval *a=CCEaseIn::create(move,//传递一个CCActionInterval指针
2//速率,确定速度变化的快慢
);


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