cocos2d-x学习笔记8ScaleTo和ScaleBy 以及 Blink

Scaleto的使用

if ( !Layer::init() )
    {
        return false;
    }
    
    Size visibleSize = Director::getInstance()->getVisibleSize();
    Vec2 origin = Director::getInstance()->getVisibleOrigin();
    
	Sprite* sprite=Sprite::create("sprite.png");	
	sprite->setPosition(Point(50,visibleSize.height/2));
	this->addChild(sprite);
	Scaleto* scaleto=Scaleto::create(2.8f,0.4f,1.0f);
	sprite->runAction(scaleto);

Scaleto的三个参数:

float duration:动作持续时间,单位为秒;

float sx:X方向的拉伸值;

float sy:Y方向的拉伸值。


ScaleBy:

ScaleBy* scaleby=ScaleBy::create(2.8f,1.0f);
ScaleBy的意思是在原来倍数的基础上拉伸,比如认是1.0倍,指定第二个参数为0.4f,则X会拉伸0.4倍。而如果原来是2.0倍,指定第二个参数为0.4f,则X会拉伸0,8倍。这里的拉伸倍数都是以原始大小为基准。


翻牌效果

一个精灵初始不拉伸,第二个精灵初始X方向拉伸为0,这样初始时第二个精灵相当于隐藏了。然后,第一个精灵的X方向开始缩小,一直缩小,一直到最后看不见。当第一个精灵的X方向缩小为0倍时,第二个精灵开始X方向的放大,慢慢放大到原始大小。


Blink:

闪烁

Blink* blink=Blink::create(3.0f,5);
	sprite->runAction(blink);

float durantion:动作持续时间,单位为秒;

int uBlinks:闪烁次数

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...