遊戲標題特效,標題特效
前言:
打算在我部落格裡新增一個文章類別,主要賞析一些簡單的2d遊戲特效。會用gif或者視頻示範, 主要用語言描述實現方式。知道語言實現後,讀者再用遊戲引擎裡的一些簡單API就很容易實現了。
1. 2d 批量掉落反彈特效
語言描述效果:每一個精靈從上面移動到下面的特定位置,然後接著跟一個反彈的效果。注意它們的移動速度不一樣,這樣才會有不同時間反彈的效果。反彈效果cocos2d引擎自己有實現叫easebounceout,其他沒有實現的引擎就要自己寫了。
cocos2d實現方式:每一個字是一個精靈。我建立了一個class 繼承於Sprite,主要增加1個屬性,一個終點位置。剛開始先把每一個精靈設定好。然後把它們加入到一個數組中。迴圈遍曆每個精靈,執行move,EaseBounceOut Action.它們的移動速度不同,是一個在0.5和1之間的隨機數。
const float moveMinAniTime = 0.5; const float moveMaxAniTime = 1.0; const float delayAniTime = 0.5; for(TitleSprite* eachSprite : titleSprites){ auto moveAction = MoveTo::create(GameUtils::getRandomNumBetweenTwoNum(moveMinAniTime, moveMaxAniTime), eachSprite->getTargetPosition()); auto easeAction = EaseBounceOut::create(moveAction->clone()); auto seqAction = Sequence::create(DelayTime::create(delayAniTime), easeAction, NULL); eachSprite->runAction(seqAction); }
2. 3d 批量掉落反彈特效
3d實現起來會更加酷,這個是我在公交車上無意中看到的效果,非常不錯,原理跟上面的2d類似,它還增加了一個"砸下去"的效果, 上下展開的效果很贊。
http://www.waitingfy.com/archives/1390