读书人

cocos2d-x Scene转换效果

发布时间: 2012-06-26 10:04:13 作者: rapoo

cocos2d-x Scene变换效果

#ifndef  _EFFECT_#define  _EFFECT_#include  "cocos2d.h"using namespace cocos2d;enum SceneTransitionEffect {    NORMAL,                 GRID,               //部落格    SWITCH,             //近远-远近-----     MOVE_LEFT,          //另一个layout左侧进入(视觉感觉是屏幕右移)    MOVE_RIGHT,         //另一个layout右侧进入(视觉感觉是屏幕左移)      MOVE_UP,            //另一个layout上侧进入(视觉感觉是屏幕下移)      MOVE_DOWN,          //另一个layout下侧进入(视觉感觉是屏幕上移)     MIDDLE_UP,          //当前屏幕被分为3列,两则下移,中间上移      MIDDLE_RIGHT,       //当前屏幕被分为3列,两则左移,中间右移     FAN_SWITCH,         //扇形转换    FLAT_SWITCH,        //平面旋转    NEAR_FAR_JUMP,      //近-远-跳动    FLIP_X_3D,          //3D x轴反转    FLIP_Y_3D,          //3D y轴反转    FLIP_XY_3D,         //3D x,y轴反转    FLIP_X,             //x轴反转    FLIP_Y,             //y轴反转    FLIP_XY,            //x,y轴反转    IN_LEFT,            //另外一个layout左侧进入覆盖当前layout     IN_RIGHT,           //另外一个layout右侧进入覆盖当前layout     IN_TOP,             //另外一个layout上面进入覆盖当前layout     IN_BOTTOM,          //另外一个layout下面进入覆盖当前layout     FADE,               //渐变(默认无颜色,可以附带颜色)      CROSS_FADE,         //另外一个直接渐变覆盖当前layout       FADE_TR,            //移动(方格状)部落格,从左下往右上      FADE_BL,            //移动(方格状)部落格,从右上往左下       FADE_UP,            //移动(长矩形,宽度是屏幕宽)部落格,从下往上    FADE_DOWN,          //移动(长矩形,宽度是屏幕宽)部落格,从上往下    };static void SceneEffect(CCScene* scene,SceneTransitionEffect type){    CCDirector* director=CCDirector::sharedDirector();//    type=FADE_DOWN;        switch (type) {        case    NORMAL:            director->replaceScene(CCTransitionScene::transitionWithDuration(5.0f,scene));            break;        case    GRID:            director->replaceScene(CCTransitionTurnOffTiles::transitionWithDuration(1.2f,scene));            break;        case    SWITCH:            director->replaceScene(CCTransitionShrinkGrow::transitionWithDuration(1.2f,scene));            break;        case    MOVE_LEFT:            director->replaceScene(CCTransitionSlideInR::transitionWithDuration(1.2f,scene));            break;        case    MOVE_RIGHT:            director->replaceScene(CCTransitionSlideInL::transitionWithDuration(1.2f,scene));            break;        case    MOVE_UP:            director->replaceScene(CCTransitionSlideInB::transitionWithDuration(1.2f,scene));            break;        case    MOVE_DOWN:            director->replaceScene(CCTransitionSlideInT::transitionWithDuration(1.2f,scene));            break;            case    MIDDLE_UP:            director->replaceScene(CCTransitionSplitCols::transitionWithDuration(1.2f,scene));            break;        case    MIDDLE_RIGHT:            director->replaceScene(CCTransitionSplitRows::transitionWithDuration(1.2f,scene));            break;                case    FAN_SWITCH:            director->replaceScene(CCTransitionRadialCW::transitionWithDuration(1.2f,scene));            break;        case    FLAT_SWITCH:            director->replaceScene(CCTransitionRotoZoom::transitionWithDuration(1.2f,scene));            break;        case    NEAR_FAR_JUMP:            director->replaceScene(CCTransitionJumpZoom::transitionWithDuration(1.2f,scene));            break;        case    FLIP_X_3D:            director->replaceScene(CCTransitionZoomFlipX::transitionWithDuration(1.2f,scene));            break;            case    FLIP_Y_3D:            director->replaceScene(CCTransitionZoomFlipY::transitionWithDuration(1.2f,scene));            break;        case    FLIP_XY_3D:            director->replaceScene(CCTransitionZoomFlipAngular::transitionWithDuration(1.2f,scene));            break;        case    FLIP_X:            director->replaceScene(CCTransitionFlipX::transitionWithDuration(1.2f,scene));            break;            case    FLIP_Y:            director->replaceScene(CCTransitionFlipY::transitionWithDuration(1.2f,scene));            break;          case    FLIP_XY:            director->replaceScene(CCTransitionFlipAngular::transitionWithDuration(1.2f,scene));            break;            case    IN_LEFT:            director->replaceScene(CCTransitionMoveInL::transitionWithDuration(1.2f,scene));            break;          case    IN_RIGHT:            director->replaceScene(CCTransitionMoveInR::transitionWithDuration(1.2f,scene));            break;            case    IN_TOP:            director->replaceScene(CCTransitionMoveInT::transitionWithDuration(1.2f,scene));            break;          case    IN_BOTTOM:            director->replaceScene(CCTransitionMoveInB::transitionWithDuration(1.2f,scene));            break;           case    FADE:            director->replaceScene(CCTransitionFade::transitionWithDuration(1.2f,scene,ccc3(255,255,255)));//ccWHITE            break;          case    CROSS_FADE:            director->replaceScene(CCTransitionCrossFade::transitionWithDuration(1.2f,scene));            break;          case    FADE_TR:            director->replaceScene(CCTransitionFadeBL::transitionWithDuration(1.2f,scene));            break;          case    FADE_BL:            director->replaceScene(CCTransitionFadeTR::transitionWithDuration(1.2f,scene));            break;          case    FADE_UP:            director->replaceScene(CCTransitionFadeDown::transitionWithDuration(1.2f,scene));            break;          case    FADE_DOWN:            director->replaceScene(CCTransitionFadeUp::transitionWithDuration(1.2f,scene));            break;              default:            break;    }    }#endif


参考:http://blog.csdn.net/xiaominghimi/article/details/6651281

读书人网 >操作系统

热点推荐