Cocos2d-x3.0 TestCPP目录笔记

1.不多说,重力加速度。
2.ActionMangerTest:此Test是为了展示通过导演类来获得动作管理器ActionManager类,来控制节点动作。
①CrashTest:销毁demo,在精灵执行旋转的同时执行让精灵延时消失和该层延迟自我销毁,此系列动作同时执行。
②LogicTest:先让grossini横向移动150像素,然后让其X,Y一同缩放2倍。
③PauseTest 通过动作管理器实现动作延迟。知识点:   
    auto director = Director::getInstance();
    director->getActionManager()->addAction(action, grossini, true);//将action添加到grossini,
    第三个参数true代表暂停此动作。
    schedule( schedule_selector(PauseTest::unpause), 3); 3为间隔,单位为秒。3秒后回调函数。
    但是确实是5秒。求大神解答。
④StopActionTest:执行一个动作后停止(Sprite*)->stopActionByTag(kTagSequence);
⑤ResumeTest:暂停3秒后,grossini执行旋转360°的同时放大2倍。
    auto director = Director::getInstance();
   director->getActionManager()->pauseTarget(pGrossini);//pauseTarget(Node*)停止当前节点一切动作
   director->getActionManager()->resumeTarget(pGrossini);//resumeTarget(Node*)恢复节点所有动作。
   两个方法成对出现。
3.Actions-Basic:此demo中体现ccp由Point代替
①ActionManual:直接设置精灵的属性demo。
const Color3B Color3B::RED    (255,   0,   0);
const Color3B Color3B::GREEN  (  0, 255,   0);
const Color3B Color3B::BLUE   (  0,   0, 255);
//第四个参数为透明度,前三个同上
const Color4B Color4B::RED    (255,   0,   0, 255);
const Color4B Color4B::GREEN  (  0, 255,   0, 255);
const Color4B Color4B::BLUE   (  0,   0, 255, 255);
//参数同上,就是用比例方式传参
const Color4F Color4F::WHITE  (    1,     1,     1, 1);
const Color4F Color4F::YELLOW (    1,     1,     0, 1);
const Color4F Color4F::GREEN  (    0,     1,     0, 1);
const Color4F Color4F::BLUE   (    0,     0,     1, 1);
const Color4F Color4F::RED    (    1,     0,     0, 1);
const Color4F Color4F::MAGENTA(    1,     0,     1, 1);
const Color4F Color4F::BLACK  (    0,     0,     0, 1);
const Color4F Color4F::ORANGE (    1,  0.5f,     0, 1);
const Color4F Color4F::GRAY   (0.65f, 0.65f, 0.65f, 1);
//下面的求解释
const BlendFunc BlendFunc::DISABLE = {GL_ONE, GL_ZERO};
const BlendFunc BlendFunc::ALPHA_PREMULTIPLIED = {GL_ONE, GL_ONE_MINUS_SRC_ALPHA};
const BlendFunc BlendFunc::ALPHA_NON_PREMULTIPLIED = {GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA};
const BlendFunc BlendFunc::ADDITIVE = {GL_SRC_ALPHA, GL_ONE};

②ActionMove:MoveTo/MoveBy。用法:此动作是移动。
        auto actionTo = MoveTo::create(2, Point(s.width-40, s.height-40));
        auto actionBy = MoveBy::create(2, Point(80,80));
        auto actionByBack = actionBy->reverse();
③ActionRotate:RotateBy/RotateTo。用法:此动作是旋转。
         auto actionTo = RotateTo::create( 2, 45);
         auto actionBy = RotateBy::create(2 ,  360);
         auto actionByBack = actionBy->reverse();
④ActionRotateBy3D:RotateBy。在3D世界旋转。X,Y坐标的基点是左下角,Z坐标的基点就是中心?
     从源码看出,只有RotateBy有,用法:
       auto actionBy1 = RotateBy::create(4, Vertex3F(360, 0, 0));
       auto actionBy2 = RotateBy::create(4, Vertex3F(0, 360, 0));
       auto actionBy3 = RotateBy::create(4 ,Vertex3F(0, 0, 360));
⑤ActionScale:ScaleTo/ScaleBy。此动作是设置缩放,参数大于零放大,小于一是缩小,负数为翻转。
        用法:
           auto actionTo = ScaleTo::create(2.0f, 0.5f);
           auto actionBy = ScaleBy::create(2.0f, 1.0f, 10.0f);
           auto actionBy2 = ScaleBy::create(2.0f, 5.0f, 1.0f);
⑥ActionSkew:SkewTo/SkewBy。此动作是设置倾斜。用法:(此动作不懂)
               auto actionTo = SkewTo::create(2, 37.2f, -37.2f);
            auto actionToBack = SkewTo::create(2, 0, 0);
            auto actionBy = SkewBy::create(2, 0.0f, -90.0f);
            auto actionBy2 = SkewBy::create(2, 45.0f, 45.0f);
⑦ActionRotationalSkew:同样是RotateBy/RotateTo。只不过是两个参数,分别是X和Y。用单独的旋转角度。
      用法:
       auto actionByBack = actionBy->reverse();
       auto actionTo = RotateTo::create(2, 180, 180);
       auto actionToBack = RotateTo::create(2, 0, 0);
       auto actionBy = RotateBy::create(2, 0.0f, 360);
       auto actionByBack = actionBy->reverse();

       auto actionBy2 = RotateBy::create(2, 360, 0);
       auto actionBy2Back = actionBy2->reverse();
⑧ActionRotationalSkewVSStandardSkew:标准Skew和Rotate比较,据发现Skew会牵扯到缩放系数。
         用法同上。
⑨ActionSkewRotateScale:三个动作同时执行。SizeMake改为Size。
      用法:
       box->runAction(Sequence::create(actionTo, actionToBack, NULL));
       box->runAction(Sequence::create(rotateTo, rotateToBack, NULL));
       box->runAction(Sequence::create(actionScaleTo, actionScaleToBack, NULL));
⑩ActionJump:JumpTo/JumpBy。不用解释。
基本动作完成,综上总结Skew和Rotate都为区别为,Skew改变了节点的缩放系数,具体改变求讲解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值