CCScene 對於使用cocos2d的童鞋確定很熟悉,那麼在使用 [[CCDirectorsharedDirector]replaceScene:<#(CCScene *)scene#>]; 對scene進行場景(CCLayout)進行切換時,cocos2d提供了一些特效進行過渡,那麼今天仔細翻開cocos2d源碼,將全部的動畫效果都測試了一遍,大概整理以下,提供你們查閱和使用吧;
由於我使用的是最新的cocos2d的1.0版本,因此一些函數方法跟以前不同了,因此不要感到奇怪;
因爲代碼都有備註,因此就直接上代碼了,就不詳細單獨解釋了;關於註釋的都是個人直觀體驗,推薦你們放到本身項目中,本身都看看每一個的效果,這樣記憶深入;
//觸摸事件 - 當手指從屏幕擡起時調用的方法-Himi
-(void) ccTouchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
CCScene* scenec = [OtherLayout scene];
//部落格------
//CCTransitionTurnOffTiles *transitionScene = [CCTransitionTurnOffTiles transitionWithDuration:3 scene:scenec];
//近遠-遠近-----
//CCTransitionShrinkGrow *transitionScene = [CCTransitionShrinkGrow transitionWithDuration:3 scene:scenec];
//另外一個layout左側進入(視覺感受是屏幕右移)
//CCTransitionSlideInL *transitionScene = [CCTransitionSlideInL transitionWithDuration:3 scene:scenec];
//另外一個layout右側進入(視覺感受是屏幕左移)
//CCTransitionSlideInR *transitionScene = [CCTransitionSlideInR transitionWithDuration:3 scene:scenec];
//另外一個layout上側進入(視覺感受是屏幕下移)
//CCTransitionSlideInT *transitionScene = [CCTransitionSlideInT transitionWithDuration:3 scene:scenec];
//另外一個layout下側進入(視覺感受是屏幕上移)
//CCTransitionSlideInB *transitionScene = [CCTransitionSlideInB transitionWithDuration:3 scene:scenec];
//當前屏幕被分爲3列,兩則下移,中間上移
//CCTransitionSplitCols *transitionScene = [CCTransitionSplitCols transitionWithDuration:3 scene:scenec];
//當前屏幕被分爲3列,兩則左移,中間右移
//CCTransitionSplitRows *transitionScene = [CCTransitionSplitRows transitionWithDuration:3 scene:scenec];
//扇形轉換-----
//CCTransitionRadialCW *transitionScene = [CCTransitionRadialCW transitionWithDuration:3 scene:scenec];
//平面旋轉-----
//CCTransitionRotoZoom *transitionScene = [CCTransitionRotoZoom transitionWithDuration:3 scene:scenec];
//近-遠-跳動------
//CCTransitionJumpZoom *transitionScene = [CCTransitionJumpZoom transitionWithDuration:3 scene:scenec];
//立體反轉(X軸)--(還有種從近到遠,從遠到近的感受)--------
//CCTransitionZoomFlipX *transitionScene = [CCTransitionZoomFlipX transitionWithDuration:3 scene:scenec];
//立體反轉(Y軸)-(還有種從近到遠,從遠到近的感受)-------
//CCTransitionZoomFlipY *transitionScene = [CCTransitionZoomFlipY transitionWithDuration:3 scene:scenec];
//立體反轉(X,Y軸)---(還有種從近到遠,從遠到近的感受)-----
//CCTransitionZoomFlipAngular *transitionScene = [CCTransitionZoomFlipAngular transitionWithDuration:3 scene:scenec];
//另一個layout左側進入覆蓋當前layout
//CCTransitionMoveInL *transitionScene = [CCTransitionMoveInL transitionWithDuration:3 scene:scenec];
//另一個layout右側進入覆蓋當前layout
//CCTransitionMoveInR *transitionScene = [CCTransitionMoveInR transitionWithDuration:3 scene:scenec];
//另一個layout上側進入覆蓋當前layout
//CCTransitionMoveInT *transitionScene = [CCTransitionMoveInT transitionWithDuration:3 scene:scenec];
//另一個layout下側進入覆蓋當前layout
//CCTransitionMoveInB *transitionScene = [CCTransitionMoveInB transitionWithDuration:3 scene:scenec];
//立體反轉(X軸)--2D平面反轉,沒有遠近感
//CCTransitionFlipX *transitionScene = [CCTransitionFlipX transitionWithDuration:3 scene:scenec];
//立體反轉(Y軸)--2D平面反轉,沒有遠近感
//CCTransitionFlipY *transitionScene = [CCTransitionFlipY transitionWithDuration:3 scene:scenec];
//立體反轉(X,Y軸)--2D平面反轉,沒有遠近感
//CCTransitionFlipAngular *transitionScene = [CCTransitionFlipAngular transitionWithDuration:3 scene:scenec];
//實體-透明-實體(默認無顏色,能夠附帶顏色)
//CCTransitionFade* transitionScene = [CCTransitionFade transitionWithDuration:3 scene:scenec withColor:ccWHITE];
//另一個直接漸變覆蓋當前layout
//CCTransitionCrossFade *transitionScene = [CCTransitionCrossFade transitionWithDuration:3 scene:scenec];
//移動(方格狀)部落格,從左下往右上
//CCTransitionFadeTR *transitionScene = [CCTransitionFadeTR transitionWithDuration:3 scene:scenec];
//移動(方格狀)部落格,從右上往左下
CCTransitionFadeBL *transitionScene = [CCTransitionFadeBL transitionWithDuration:3 scene:scenec];
//移動(長矩形,寬度是屏幕寬)部落格,從下往上
//CCTransitionFadeUp *transitionScene = [CCTransitionFadeUp transitionWithDuration:3 scene:scenec];
//移動(長矩形,寬度是屏幕寬)部落格,從上往下
//CCTransitionFadeDown *transitionScene = [CCTransitionFadeDown transitionWithDuration:3 scene:scenec];
[[CCDirector sharedDirector] replaceScene: transitionScene];
}app
以上代碼Himi推薦你們本身常識運行每種特效,畢竟每一個人都有不一樣的感受,註釋都是個人感受寫的,大概註釋了一下而已;ide
下面我來給你們介紹如何在cocos2d 1.0版本中設置豎屏顯示,由於默認是橫屏;函數
首先找到RootViewController.m 類(此類在1.0版本存在),而後找到宏定義的一段代碼,代碼以下:oop
#elif GAME_AUTOROTATION == kGameAutorotationUIViewController學習
而後下面能看到cocos2d的默認代碼是設置橫屏:測試
若是想設置豎屏,請更改以下便可:動畫
ok,今天就先介紹這裏~繼續學習~下面給出一張,部落格效果,從左下往右上的切換特效截圖;this