您的位置:首页 > 理论基础 > 计算机网络

Cocos2d-x基础:TestCpp之ActionsTest

2013-07-12 15:19 531 查看


动作效果,都是作用于CCNode。

那CCSprite精灵也属于CCNode,当然就可以使用动作啦~

精灵的缩放:

setScaleX(float fScaleX);   
    setScaleY(float fScaleY);

理解:设置节点X、Y轴的比例因子,默认为1.0f,

如果参数为负数,则改变坐标轴的方向。

精灵的透明度:

void CCSprite::setOpacity(GLubyte opacity)
理解: 设置精灵的透明程度。参数Glubyte是unsigned char类型,范围是0~255。0 是全透明。

精灵的颜色:

void CCSprite::setColor(const ccColor3B& color3)
理解:参数是一个颜色结构体,结构体有三个参数:分别是r,g,b,且都是unsigned char类型。

精灵的动作概述:

CCAction * CCNode::runAction(CCAction* action)
理解:参数是一个CCAction动作。可以是单个动作,也可以是CCSequence一系列动作(按顺序执行)。但系列动作中只能是CCFiniteTimeAction类及其子类。




主要的动作类一共有三个,从左到右:有限时间的动作类、跟踪动作类、动作速度类。

将精灵(节点)添加动作效果,需要调用上面的runAction()语句。那么我们只需要创建想要的Action对象,直接调用就好了。

还是一步一步跟着TestCpp来学习。

精灵的移动:

CCActionInterval*  actionTo = CCMoveTo::create(5, ccp(s.width-40, s.height-40));
    CCActionInterval*  actionBy = CCMoveBy::create(1, ccp(s.width-40, s.height-40));
    CCActionInterval*  actionByBack = actionBy->reverse();


理解:CCMoveto和CCmoveBy都是CCactionInterval的子类。Moveto是在一段时间内移动到一个绝对坐标位置。Moveby是在一段时间内移动到以自己为原点的相对坐标位置。reverse()就是反向动作。

精灵的旋转:

和移动类似。

CCRotateTo是移动到特定的角度。

CCRotateBy是顺时针旋转一个角度。

剩下几个重要的类:

CCRepeatForever:不断重复动作。

CCSequence:组个各种动作的效果。

看懂结构图后,大部分的动作都是类似,也就不做笔记,也不整理了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: