zoukankan      html  css  js  c++  java
  • cocos2dx的初步学习二

    好了,上一篇文章中我们介绍了如何创建一个精灵,那么现在我们给他加点动作(action)。下面我总结了一下一些基本的动作函数。

      CCPoint p=ccp(size.width/2+100, size.height/2);
        //放置 其实就相当于setposition
        CCPlace *ac1=CCPlace::create(p);
        
        //隐藏
        CCHide *ac2=CCHide::create();
        
        //显示
        CCShow *ac3=CCShow::create();
        
        //可见切换
        CCToggleVisibility *ac4=CCToggleVisibility::create();
        
        //to移到到指定位置,by是相对的位置,移到的是增量
        CCMoveTo *ac5=CCMoveTo::create(2.0f, p);
        
        //跳跃到,4个参数分别是时间,位置,跳跃的高度,跳跃次数
        CCJumpTo *ac6=CCJumpTo::create(2.0f, p, 10, 2);
        
        //贝塞尔曲线,先设置贝塞尔参数,两个控制点,一个结束点
        ccBezierConfig bezier;
        
        bezier.controlPoint_1=ccp(100, 100);
        bezier.controlPoint_2=ccp(300, 300);
        bezier.endPosition=ccp(500, 500);
        
        CCBezierTo *ac7=CCBezierTo::create(2.0f, bezier);
        
        //放大
        CCScaleTo *ac8=CCScaleTo::create(2.0f, 2.0f);
        
        //旋转
        CCRotateTo *ac9=CCRotateTo::create(2.0f, 200);
        
        //闪烁
        CCBlink *ac10=CCBlink::create(2.0f, 3);
        
        //色调变换
        CCTintTo *ac11=CCTintTo::create(2.0f, 0, 234, 255);
        
        //变暗到
        CCFadeTo *ac12=CCFadeTo::create(2.0, 200);
        
        //由无变亮
        CCFadeIn *ac13=CCFadeIn::create(2.0f);
        
        //由亮到无
        CCFadeOut *ac14=CCFadeOut::create(2.0f);
        
        //序列,顾名思义就是按照顺序一个个动画执行,别忘了最后要加上NULL,表示结束了
        CCSequence *seq=CCSequence::create(ac1,ac2,ac3,NULL);
        
        //同步,几个动画一起执行
        CCSpawn *spawn=CCSpawn::create(ac1,ac2,ac3,NULL);
        
        //有次数的的重复动画
        CCRepeat *repeat=CCRepeat::create(seq, 10);
        
        //无限重复,但不能参与序列,同步动画
        CCRepeatForever *repeatForver=CCRepeatForever::create(seq);
        
        //由慢至快,第二个参数表示加速率
        CCEaseIn *ac16=CCEaseIn::create(ac5, 2.0f);
        
        //这些都是关于速度变化的动画
        CCEaseInOut *ac17=CCEaseInOut::create(ac5, 2.0f);
        
        //延迟
        CCDelayTime *delatTime=CCDelayTime::create(1.0f);
    
        
        pSprite->runAction(ac17);
    

      

    好了,当然里面并不是很全,还有些是to和by的区别,大家都可以去尝试尝试。。。。。。。。

  • 相关阅读:
    http-proxy-middleware与express.json()的bug
    20+前端常用的vscode插件(总结推荐)
    图解翻转单向链表,超详细(python语言实现)
    pytest + allure2.x 踩坑-报告无数据
    Pycharm+pytest+allure打造高逼格的测试报告
    Appium Appium Python API 中文版
    appium模拟键盘事件
    AppiumDesktop控制手机和安卓模拟器
    Appium环境搭建超详细教程
    Fiddler抓包工具总结
  • 原文地址:https://www.cnblogs.com/henrendadi/p/3137996.html
Copyright © 2011-2022 走看看