2023-04-18【cocos2d-x】动作类之缓冲动作

一、缓冲动作

        在实现运动中,常常需要一些加速度或者减速度的效果。Cocos2D-X引擎为我们提供了相应的实现接口,这样就不用再用原来的公式计算方法来实现加减速的效果。

     Ease系列的方法改变了运动的速度,但是并没有改变总体时间。如果整个动作持续5s,那么整个时间仍然会持续 5s。这些动作可以分为三类。 

<1> In actions:action(开始的时候加速)

<2> Out actions:action(结束的时候加速)

<3> InOut actions:action(开始和结束的时候加速)

CCActionEase有很多子类,根据不同的缓冲公式来模拟加减速过程。缓冲动作的具体内容如下。 

<1> 指数缓冲:分别为EaseExponentialIn、EaseExponentialOut、EaseExponentialInOut。

速度时间坐标图如下图所示。

<2> 赛因缓冲:分别为EaseSineIn、EaseSineOut、EaseSineInOut。速度时间坐标图如下图所示。


<3> 跳跃缓冲:分别为EaseBounceIn、EaseBounceOut、EaseBounceInOut。速度时间坐标图如下图所示。


<4> 弹性缓冲:分别为EaseElasticIn、EaseElasticOut、EaseElasticInOut。速度时间坐标图如下图所示


<5> 回震缓冲:分别为EaseBackIn、EaseBackOut、EaseBackInOut。速度时间坐标图如下图所示。


以上介绍了5种缓冲动作,加上基本的缓冲动作,一共是6种缓冲动作, 

//基本缓冲动作

CCEaseIn::create((CCActionInterval*)(move->copy()->autorelease()),2.5f);

CCEaseOut::create((CCActionInterval*)(move->copy()->autorelease()),2.5f);

CCEaseInOut::create((CCActionInterval*)(move->copy()->autorelease()),0.65f);

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容