cocos2dx 動畫常見的22種特效
bool HelloWorld::init()
{
//////////////////////////////
// 1. super init first
if ( !CCLayer::init() )
{
return false;
}
CCSize size =CCDirector::sharedDirector()->getWinSize();//獲取屏幕大小
CCSprite * sp = CCSprite::create("Icon.png");
sp->setPosition(ccp(200, 200));
addChild(sp);
// 常見的22種特效
// CCShaky3D
//作用:創建一個3d晃動的特效
// 參數1:晃動的範圍
// 參數2:是否有z軸晃動
// 參數3: 網格大小
// 參數4:特效持續的時間
// CCActionInterval * shaky3D= CCShaky3D::create(15, false, ccg(15, 10), 4);
// sp->runAction(shaky3D);
// CCShakyTiles3D
// 作用:創建一個3d瓷磚晃動的特效
// 參數1:晃動的範圍
// 參數2:是否有z軸晃動
// 參數3: 網格大小
// 參數4:特效持續的時間
// CCActionInterval * shakyTiles3D = CCShakyTiles3D::create(15, true, ccg(15, 10), 4);
// sp->runAction(shakyTiles3D);
// CCWaves
// 創建一個波動特效
// 參數1:波動的速率
// 參數2:振幅
// 參數3:水平波動
// 參數4:垂直波動
// 參數5:網格大小
// 參數6:特效持續時間
// CCActionInterval * waves = CCWaves::create(10, 20, true, true, ccg(16, 12), 4);
// sp->runAction(waves);
// CCWaves3D
// 創建一個3D波動特效
// 參數1:波動的速率
// 參數2:振幅
// 參數3:網格大小
// 參數4:特效持續時間
// CCActionInterval * waves3d= CCWaves3D::create(10, 20, ccg(16, 12), 4);
// sp->runAction(waves3d);
// CCWavesTiles3D
// 創建一個3D瓷磚波動特效
// 參數1:波動的速率
// 參數2:振幅
// 參數3:網格大小
// 參數4:特效持續時間
// CCActionInterval * wavesTiles3D = CCWavesTiles3D::create(10, 20, ccg(16, 12), 4);
// sp->runAction(wavesTiles3D);
// CCFlipX3D
// 作用:x軸3D反轉特效
// 參數:特效持續的時間
// CCActionInterval *flipX3D= CCFlipX3D::create(4);
// sp->runAction(flipX3D);
// CCFlipY3D
// 作用:Y軸3D反轉特效
// 參數:特效持續的時間
// CCActionInterval * flipY3D = CCFlipY3D::create(4);
// sp->runAction(flipY3D);
// CCLens3D
// 作用: 凸鏡特效
// 參數1:凸鏡中心點
// 參數2:凸鏡半徑
// 參數3:網格大小
// 參數4:網格持續時間
// CCActionInterval * lens3D= CCLens3D::create(CCPointMake(size.width/2, size.height/2), 240, ccg(15, 10), 4);
// sp->runAction(lens3D);
// CCRipple3D
// 作用:水波特效
// 參數1:起始位子
// 參數2:半徑
// 參數3:速率
// 參數4:振幅
// 參數5:網格大小
// 參數6:特效持續的時間
// CCActionInterval * ripple3D= CCRipple3D::create(CCPointMake(size.width/2, size.height/2), 240, 4, 160, ccg(15,10), 4);
// sp->runAction(ripple3D);
// CCLiquid
// 作用:液體特效
// 參數1:速率
// 參數2:振幅
// 參數3:網格大小
// 參數4:特效持續時間
// CCActionInterval * liquid = CCLiquid::create(4, 20, ccg(16, 12), 4);
// sp->runAction(liquid);
// CCTwirl
// 作用:扭曲旋轉特效
// 參數1:扭曲旋轉中心點
// 參數2:扭曲旋轉的次數
// 參數3:振幅
// 參數4:網格大小
// 參數5:特效持續時間
// CCActionInterval * twirl = CCTwirl::create(CCPointMake(size.width/2, size.height/2), 2, 2.5f, ccg(12, 8), 3);
// sp->runAction(twirl);
// CCShuffleTiles
// 作用:瓷磚的洗牌特效
// 參數1:隨機數
// 參數2:網格大小
// 參數3:特效持續的時間
// CCActionInterval *shuffleTiles = CCShuffleTiles::create(16, ccg(16, 12), 2);
// sp->runAction(shuffleTiles);
// CCShatteredTiles3D
// 作用:破碎的3D瓷磚特效
// 參數1:範圍
// 參數2:是否開啓z軸
// 參數3:網格大小
// 參數4:特效持續的時間
// CCActionInterval * shatteredTiles3D= CCShatteredTiles3D::create(25, true, ccg(16, 12), 4);
// sp->runAction(shatteredTiles3D);
// CCFadeOutTRTiles
// 作用:部落格效果 , 從左下角到右下角
// 參數1:網格大小
// 參數2:特效持續的時間
// CCActionInterval * fadeOutTRTiles = CCFadeOutTRTiles::create(ccg(16, 12), 3);
// sp->runAction(fadeOutTRTiles);
// CCFadeOutBLTiles
// 作用:部落格效果 , 從右下角到左下角
// 參數1:網格大小
// 參數2:特效持續的時間
// CCActionInterval * fadeOutBLTiles = CCFadeOutBLTiles::create(ccg(16, 12), 3);
// sp->runAction(fadeOutBLTiles);
// CCFadeOutUpTiles
// 作用:摺疊效果 從下到上
// 參數1:網格大小
// 參數2:特效持續的時間
// CCActionInterval * fadeOutUpTiles = CCFadeOutUpTiles::create(ccg(16, 12), 3);
// sp->runAction(fadeOutUpTiles);
// CCFadeOutDownTiles
// 作用:摺疊效果 從上到下
// 參數1:網格大小
// 參數2:特效持續的時間
// CCActionInterval * fadeOutDownTiles = CCFadeOutDownTiles::create(ccg(16, 12), 3);
// sp->runAction(fadeOutDownTiles);
// CCTurnOffTiles
// 作用:方塊消失特效
// 參數1:網格大小
// 參數2:特效持續的時間
// CCActionInterval * turnOffTiles = CCTurnOffTiles::create(ccg(16, 12), 3);
// sp->runAction(turnOffTiles);
// CCJumpTiles3D
// 作用:跳動的方格特效
// 參數1:跳動的次數
// 參數2:網格的大小
// 參數3:特效持續的時間
// CCActionInterval * jumpTiles3D = CCJumpTiles3D::create(1, 30, ccg(15, 10), 2);
// sp->runAction(jumpTiles3D);
// CCSplitRows
// 作用:分多行消失特效
// 參數1:行數
// 參數2:特效持續的時間
// CCActionInterval *splitRows= CCSplitRows::create(20, 2);
// sp->runAction(splitRows);
// CCSplitCols
// 作用:分多列消失特效
// 參數1:列數
// 參數2:特效持續的時間
// CCActionInterval * splitCols = CCSplitCols::create(20, 2);
// sp->runAction(splitCols);
// CCPageTurn3D
// 作用:3D翻頁特效
// 參數1:網格大小
// 參數2:特效持續的時間
CCActionInterval * pageTurn3D = CCPageTurn3D::create(ccg(15, 10), 3);
sp->runAction(pageTurn3D);
return true;
}
{
//////////////////////////////
// 1. super init first
if ( !CCLayer::init() )
{
return false;
}
CCSize size =CCDirector::sharedDirector()->getWinSize();//獲取屏幕大小
CCSprite * sp = CCSprite::create("Icon.png");
sp->setPosition(ccp(200, 200));
addChild(sp);
// 常見的22種特效
// CCShaky3D
//作用:創建一個3d晃動的特效
// 參數1:晃動的範圍
// 參數2:是否有z軸晃動
// 參數3: 網格大小
// 參數4:特效持續的時間
// CCActionInterval * shaky3D= CCShaky3D::create(15, false, ccg(15, 10), 4);
// sp->runAction(shaky3D);
// CCShakyTiles3D
// 作用:創建一個3d瓷磚晃動的特效
// 參數1:晃動的範圍
// 參數2:是否有z軸晃動
// 參數3: 網格大小
// 參數4:特效持續的時間
// CCActionInterval * shakyTiles3D = CCShakyTiles3D::create(15, true, ccg(15, 10), 4);
// sp->runAction(shakyTiles3D);
// CCWaves
// 創建一個波動特效
// 參數1:波動的速率
// 參數2:振幅
// 參數3:水平波動
// 參數4:垂直波動
// 參數5:網格大小
// 參數6:特效持續時間
// CCActionInterval * waves = CCWaves::create(10, 20, true, true, ccg(16, 12), 4);
// sp->runAction(waves);
// CCWaves3D
// 創建一個3D波動特效
// 參數1:波動的速率
// 參數2:振幅
// 參數3:網格大小
// 參數4:特效持續時間
// CCActionInterval * waves3d= CCWaves3D::create(10, 20, ccg(16, 12), 4);
// sp->runAction(waves3d);
// CCWavesTiles3D
// 創建一個3D瓷磚波動特效
// 參數1:波動的速率
// 參數2:振幅
// 參數3:網格大小
// 參數4:特效持續時間
// CCActionInterval * wavesTiles3D = CCWavesTiles3D::create(10, 20, ccg(16, 12), 4);
// sp->runAction(wavesTiles3D);
// CCFlipX3D
// 作用:x軸3D反轉特效
// 參數:特效持續的時間
// CCActionInterval *flipX3D= CCFlipX3D::create(4);
// sp->runAction(flipX3D);
// CCFlipY3D
// 作用:Y軸3D反轉特效
// 參數:特效持續的時間
// CCActionInterval * flipY3D = CCFlipY3D::create(4);
// sp->runAction(flipY3D);
// CCLens3D
// 作用: 凸鏡特效
// 參數1:凸鏡中心點
// 參數2:凸鏡半徑
// 參數3:網格大小
// 參數4:網格持續時間
// CCActionInterval * lens3D= CCLens3D::create(CCPointMake(size.width/2, size.height/2), 240, ccg(15, 10), 4);
// sp->runAction(lens3D);
// CCRipple3D
// 作用:水波特效
// 參數1:起始位子
// 參數2:半徑
// 參數3:速率
// 參數4:振幅
// 參數5:網格大小
// 參數6:特效持續的時間
// CCActionInterval * ripple3D= CCRipple3D::create(CCPointMake(size.width/2, size.height/2), 240, 4, 160, ccg(15,10), 4);
// sp->runAction(ripple3D);
// CCLiquid
// 作用:液體特效
// 參數1:速率
// 參數2:振幅
// 參數3:網格大小
// 參數4:特效持續時間
// CCActionInterval * liquid = CCLiquid::create(4, 20, ccg(16, 12), 4);
// sp->runAction(liquid);
// CCTwirl
// 作用:扭曲旋轉特效
// 參數1:扭曲旋轉中心點
// 參數2:扭曲旋轉的次數
// 參數3:振幅
// 參數4:網格大小
// 參數5:特效持續時間
// CCActionInterval * twirl = CCTwirl::create(CCPointMake(size.width/2, size.height/2), 2, 2.5f, ccg(12, 8), 3);
// sp->runAction(twirl);
// CCShuffleTiles
// 作用:瓷磚的洗牌特效
// 參數1:隨機數
// 參數2:網格大小
// 參數3:特效持續的時間
// CCActionInterval *shuffleTiles = CCShuffleTiles::create(16, ccg(16, 12), 2);
// sp->runAction(shuffleTiles);
// CCShatteredTiles3D
// 作用:破碎的3D瓷磚特效
// 參數1:範圍
// 參數2:是否開啓z軸
// 參數3:網格大小
// 參數4:特效持續的時間
// CCActionInterval * shatteredTiles3D= CCShatteredTiles3D::create(25, true, ccg(16, 12), 4);
// sp->runAction(shatteredTiles3D);
// CCFadeOutTRTiles
// 作用:部落格效果 , 從左下角到右下角
// 參數1:網格大小
// 參數2:特效持續的時間
// CCActionInterval * fadeOutTRTiles = CCFadeOutTRTiles::create(ccg(16, 12), 3);
// sp->runAction(fadeOutTRTiles);
// CCFadeOutBLTiles
// 作用:部落格效果 , 從右下角到左下角
// 參數1:網格大小
// 參數2:特效持續的時間
// CCActionInterval * fadeOutBLTiles = CCFadeOutBLTiles::create(ccg(16, 12), 3);
// sp->runAction(fadeOutBLTiles);
// CCFadeOutUpTiles
// 作用:摺疊效果 從下到上
// 參數1:網格大小
// 參數2:特效持續的時間
// CCActionInterval * fadeOutUpTiles = CCFadeOutUpTiles::create(ccg(16, 12), 3);
// sp->runAction(fadeOutUpTiles);
// CCFadeOutDownTiles
// 作用:摺疊效果 從上到下
// 參數1:網格大小
// 參數2:特效持續的時間
// CCActionInterval * fadeOutDownTiles = CCFadeOutDownTiles::create(ccg(16, 12), 3);
// sp->runAction(fadeOutDownTiles);
// CCTurnOffTiles
// 作用:方塊消失特效
// 參數1:網格大小
// 參數2:特效持續的時間
// CCActionInterval * turnOffTiles = CCTurnOffTiles::create(ccg(16, 12), 3);
// sp->runAction(turnOffTiles);
// CCJumpTiles3D
// 作用:跳動的方格特效
// 參數1:跳動的次數
// 參數2:網格的大小
// 參數3:特效持續的時間
// CCActionInterval * jumpTiles3D = CCJumpTiles3D::create(1, 30, ccg(15, 10), 2);
// sp->runAction(jumpTiles3D);
// CCSplitRows
// 作用:分多行消失特效
// 參數1:行數
// 參數2:特效持續的時間
// CCActionInterval *splitRows= CCSplitRows::create(20, 2);
// sp->runAction(splitRows);
// CCSplitCols
// 作用:分多列消失特效
// 參數1:列數
// 參數2:特效持續的時間
// CCActionInterval * splitCols = CCSplitCols::create(20, 2);
// sp->runAction(splitCols);
// CCPageTurn3D
// 作用:3D翻頁特效
// 參數1:網格大小
// 參數2:特效持續的時間
CCActionInterval * pageTurn3D = CCPageTurn3D::create(ccg(15, 10), 3);
sp->runAction(pageTurn3D);
return true;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.