zoukankan      html  css  js  c++  java
  • 2.CCGridAction(3D效果),3D反转特效,凸透镜特效,液体特效,3D翻页特效,水波纹特效,3D晃动的特效,扭曲旋转特效,波动特效,3D波动特效

    

    1 类图组织

    2 实例

    CCSprite * spr = CCSprite::create("HelloWorld.png");

    spr->setPosition(ccp(winSize.width/2,winSize.height/2));

    addChild(spr);

     

    //GridAction

    //CCFlipX3D * action = CCFlipX3D::create(2);

    //CCFlipY3D * action = CCFlipY3D::create(2);

    //CCLens3D * action = CCLens3D::create(2,

    CCSize(20,20),ccp(240,160),100);

    //CCLiquid * action = CCLiquid::create(4, CCSize(20, 20), 20, 35);

    //CCPageTurn3D * action = CCPageTurn3D::create(2, CCSize(20,20));

    //CCRipple3D * action = CCRipple3D::create(2,

    CCSize(20,20),ccp(240,160),40,20,30);

    //CCShaky3D * action = CCShaky3D::create(2,

    CCSize(20,20),20,false);

    //CCTwirl * action = CCTwirl::create(2,

    CCSize(20,20),ccp(240,160),3,30);

    //CCWaves * action = CCWaves::create(2,

    CCSize(20,20),30,30,false,true);

    //CCWaves3D * action = CCWaves3D::create(2, CCSize(20,20),30,30);

     

    3  Y  3D反转特效(CCFlipX3D

    CCActionInterval* filpX = CCFlipX3D::create(5); 

    sp->runAction(filpX); 

    //作用:Y3D反转特效

    //參数:特效持续的时间

    案例:

    T18Grid3D.h

    #ifndef __T18Grid3D_H__

    #define __T18Grid3D_H__

     

    #include "cocos2d.h"

    #include "TBack.h"

    USING_NS_CC;

    class T18Grid3D :public TBack

    {

    public:

        static CCScene * scene();

        CREATE_FUNC(T18Grid3D);

        bool init();

    };

     

    #endif

    T18Grid3D.cpp

    #include "T18Grid3D.h"

    #include "AppMacros.h"

     

    CCScene *T18Grid3D::scene()

    {

        CCScene * scene = CCScene::create();

        T18Grid3D * layer = T18Grid3D::create();

        scene->addChild(layer);

        return scene;

    }

     

    bool T18Grid3D::init()

    {

        TBack::init();

       

        //Grid3D

        CCSprite * spr = CCSprite::create("HelloWorld.png");

        spr->setPosition(ccp(winSize.width / 2, winSize.height / 2));

        addChild(spr);

     

        //x  3D反转特效

        CCActionInterval* filpX = CCFlipX3D::create(5);

        spr->runAction(filpX);

     

        return true;

    }

    执行效果:

    Y3D发转特效

    CCActionInterval* filpY = CCFlipY3D::create(5);

    spr->runAction(filpY);

    #include "T18Grid3D.h"

    #include "AppMacros.h"

     

    CCScene *T18Grid3D::scene()

    {

        CCScene * scene = CCScene::create();

        T18Grid3D * layer = T18Grid3D::create();

        scene->addChild(layer);

        return scene;

    }

     

    bool T18Grid3D::init()

    {

        TBack::init();

       

        //Grid3D

        CCSprite * spr = CCSprite::create("HelloWorld.png");

        spr->setPosition(ccp(winSize.width / 2, winSize.height / 2));

        addChild(spr);

     

        //x  3D反转特效

        CCActionInterval * filpY = CCFlipY3D::create(5);

        spr->runAction(filpY);

     

        return true;

    }

    执行效果:

    凸透镜特效

    CCLen3D * CCLen3D::create(float duration,const CCSize & gridSize,const CCPoint& position,float radius);

     

    CCPointMake表示的是创建一个点)

    CCActionInterval* lens = CCLens3D::create(2, CCSize(10, 10),CCPointMake(240, 160), 240);

    spr->runAction(lens);

    作用:凸镜特效

    參数:网格持续的时间

    參数:网格大小

    參数:凸透镜中心点

    參数:凸镜半径

    #include "T18Grid3D.h"

    #include "AppMacros.h"

     

    CCScene *T18Grid3D::scene()

    {

        CCScene * scene = CCScene::create();

        T18Grid3D * layer = T18Grid3D::create();

        scene->addChild(layer);

        return scene;

    }

     

    bool T18Grid3D::init()

    {

        TBack::init();

       

        //Grid3D

        CCSprite * spr = CCSprite::create("HelloWorld.png");

        spr->setPosition(ccp(winSize.width / 2, winSize.height / 2));

        addChild(spr);

     

        //凸透镜特效

        CCLens3D * action = CCLens3D::create(20,CCSize(20,20),

            ccp(240,160),100);

        spr->runAction(action);

     

        return true;

    }

    执行结果:

    CCLiquid* CCLiquid::create(float duration, const CCSize& gridSize, unsigned int waves, float amplitude);

    spr->runAction(liquid);

    作用:液体特效

    參数:特效持续时间

    參数:网格大小

    參数:wave个数

    參数:振幅

    #include "T18Grid3D.h"

    #include "AppMacros.h"

     

    CCScene *T18Grid3D::scene()

    {

        CCScene * scene = CCScene::create();

        T18Grid3D * layer = T18Grid3D::create();

        scene->addChild(layer);

        return scene;

    }

     

    bool T18Grid3D::init()

    {

        TBack::init();

       

        //Grid3D

        CCSprite * spr = CCSprite::create("HelloWorld.png");

        spr->setPosition(ccp(winSize.width / 2, winSize.height / 2));

        addChild(spr);

     

        //液体震荡特效

        CCLiquid *action = CCLiquid::create(8,CCSize(4,4),10,3);

        spr->runAction(action);

     

        return true;

    }

    执行结果(出现液体的震荡效果):

    3D 翻页特效

    CCPageTurn3D* CCPageTurn3D::create(float duration, const CCSize& gridSize);

    CCActionInterval * pageTurn3D = CCPageTurn3D::create(4,CCSize(20,20));

    spr->runAction(pageTurn3D);

    //作用:3D翻页特效

    //參数:特效持续的时间

    //參数:网格大小

    #include "T18Grid3D.h"

    #include "AppMacros.h"

     

    CCScene *T18Grid3D::scene()

    {

        CCScene * scene = CCScene::create();

        T18Grid3D * layer = T18Grid3D::create();

        scene->addChild(layer);

        return scene;

    }

     

    bool T18Grid3D::init()

    {

        TBack::init();

       

        //Grid3D

        CCSprite * spr = CCSprite::create("HelloWorld.png");

        spr->setPosition(ccp(winSize.width / 2, winSize.height / 2));

        addChild(spr);

     

        //3D 翻页特效

        CCPageTurn3D * action = CCPageTurn3D::create(20, CCSize(20, 20));

        spr->runAction(action);

     

        return true;

    }

    水波纹特效

    CCRipple3D* CCRipple3D::create(

    float duration,

    const CCSize& gridSize,

    const CCPoint& position,

    float radius,

    unsigned int waves,

    float amplitude);

    作用:水波特效

    參数:特效持续的时间

    參数:网格大小

    參数:起始位置

    參数:半径

    參数:速率

    參数:振幅

    #include "T18Grid3D.h"

    #include "AppMacros.h"

     

    CCScene *T18Grid3D::scene()

    {

        CCScene * scene = CCScene::create();

        T18Grid3D * layer = T18Grid3D::create();

        scene->addChild(layer);

        return scene;

    }

     

    bool T18Grid3D::init()

    {

        TBack::init();

       

        //Grid3D

        CCSprite * spr = CCSprite::create("HelloWorld.png");

        spr->setPosition(ccp(winSize.width / 2, winSize.height / 2));

        addChild(spr);

     

        //水波纹特效

        CCActionInterval * action = CCRipple3D::create(

            10,                     //特效持续的时间

            CCSize(10, 10),         //网格大小

            CCPointMake(240, 210),  //起始位置

            40,                     //半径

            6,                      //速率

            160);                   //振幅

        spr->runAction(action);

     

        return true;

    }

    3D 晃动特效

    CCShaky3D *CCShaky3D::create(float duration,const CCSize& gridSize,int range,bool shakeZ);

    CCActionInterval* shaky3D = CCShaky3D::create(5, CCSize

  • 相关阅读:
    servlet生命周期总结
    两周找工作有感
    PowerBuilder中新建PBL
    oracle navicat 可视化操作进行数据的修改
    oracle for update for update nowait
    表中字段为关键字,查询字段加引号
    愿你
    oracle安装注意
    随笔
    JeeSite功能模块解读,功能介绍,功能实现
  • 原文地址:https://www.cnblogs.com/llguanli/p/7190004.html
  • Copyright © 2011-2022 走看看