cocos2d的常用动作及效果总结之三:Ease actions

Ease actions 影响的是动作的时间线性。

举个例子,比如你想让一个精灵的运动由快到慢的变化;又或者一开始慢然后开始变快接着再慢下来,想像一下钟摆的运动。

用Ease actions就可以简单实现上面这种看似复杂的运动。

Ease actions

包含 CCEaseIn,CCEaseOut,CCEaseInOut三个类,示例:

id action = [CCMoveTo actionWithDuration:2 position:ccp(100,100)];
id ease = [CCEaseIn actionWithAction:action rate:2];
[sprite runAction: ease]; 

actionwithaction参数就是要用Ease来处理的动作, rate是加速率,不过这个加速率具体什么数值合适可能要慢慢试一试了。上例就是sprite在一开始加速向移动到(100,100)位置。

其他两个使用的格式一样,只是效果不同,可以每个试试看看效果。

EaseSine actions

包含CCEaseSineIn, CCEaseSineOut,CCEaseSineInOut  三个类,示例:

// Sine at the beginning
id move = [CCMoveBy actionWithDuration:3 position:ccp(350,0)];
id action = [CCEaseSineIn actionWithAction:move];
[sprite runAction:action];

这个与上面的 Ease actions部分不同的是加速率。

CCEaseSineOut,CCEaseSineInOut两个使用的方式和上面是一样的,只是时间变化有所不同。

其他的几种 ease actions 暂时还没用到,以后用到后会再补充。

你可能感兴趣的:(cocos2d)