cocos2d-x 3.0中場景切換特效比較多,而且遊戲開發中也經常需要用到這些特效,來使場景切換時不至於那麼幹巴,遂這裏彙總一下,開發中使用。
場景切換用到導演類Directory,大多數用的都是替換場景,當然也可以用出棧進棧的方式來進行場景的替換,這裏以replaceScene來舉例。
場景切換特效的應用代碼:
1
2
3
|
auto
scene=HelloWorld::createScene(); //創建待切換的場景 auto
transition=TransitionZoomFlipY::create( 1 .0f,scene); //給場景包裝動畫特效
Director::getInstance()->replaceScene(transition); //運用導演類來進行切換場景 |
下面列舉下場景切換的動畫效果,可以參考上面的代碼來運用各個特效,在自己的遊戲中適當的運用特效可以起到很好的效果。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
//慢慢淡化到另一場景 TransitionCrossFade::create(時間,目標場景);
//本場景變暗消失後另一場景慢慢出現 TransitionFade::create(時間,目標場景);
//本場景右上角到左下角方塊消失到另一場景 TransitionFadeBL::create(時間,目標場景);
//本場景從上到下橫條消失到另一場景 TransitionFadeDown::create(時間,目標場景);
//本場景左下角到右上角方塊消失到另一場景 TransitionFadeTR::create(時間,目標場景);
//本場景從下到上橫條消失到另一場景 TransitionFadeUp::create(時間,目標場景);
//本場景翻轉消失到另一場景(斜上方) TransitionFlipAngular::create(時間,目標場景,樣式
); //本場景翻轉消失到另一場景(X軸) TransitionFlipX::create(時間,目標場景,樣式); //本場景翻轉消失到另一場景(Y軸) TransitionFlipY::create(時間,目標場景);
//本場景跳動消失後另一場景跳動出現 TransitionJumpZoom::create(時間,目標場景);
//另一場景由整體從下面出現 TransitionMoveInB::create(時間,目標場景);
//另一場景由整體從左面出現 TransitionMoveInL::create(時間,目標場景);
//另一場景由整體從上面出現 TransitionMoveInT::create(時間,目標場景);
//另一場景由整體從右面出現 TransitionMoveInR::create(時間,目標場景);
//翻頁切換,bool爲true是向前翻。 TransitionPageTurn::create(時間,目標場景,bool);
//本場景從左到右消失同時另一場景出現 TransitionProgressHorizontal::create(時間,目標場景); //本場景從中間到四周消失同時另一場景出現 TransitionProgressInOut::create(時間,目標場景);
//本場景從四周到中間消失同時另一場景出現 TransitionProgressOutIn::create(時間,目標場景);
//本場景逆時針消失到另一場景 TransitionProgressRadialCCW::create(時間,目標場景);
//本場景順時針消失到另一場景 TransitionProgressRadialCW::create(時間,目標場景);
//本場景從上到下消失同時另一場景出現 TransitionProgressVertical::create(時間,目標場景);
//本場景旋轉消失後另一場景旋轉出現 TransitionRotoZoom::create(時間,目標場景);
//本場景縮小切換到另一場景放大 TransitionShrinkGrow::create(時間,目標場景);
//本場景向上滑動到另一場景 TransitionSlideInB::create(時間,目標場景);
//本場景向右滑動到另一場景 TransitionSlideInL::create(時間,目標場景);
//本場景向左滑動到另一場景 TransitionSlideInR::create(時間,目標場景);
//本場景向下滑動到另一場景 TransitionSlideInT::create(時間,目標場景);
//本場景三矩形上下消失後另一場景三矩形上下出現 TransitionSplitCols::create(時間,目標場景);
//本場景三矩形左右消失後另一場景三矩形左右出現 TransitionSplitRows::create(時間,目標場景);
//本場景小方塊消失到另一場景 TransitionTurnOffTiles::create(時間,目標場景);
//本場景翻轉消失到另一場景(斜上方) TransitionZoomFlipAngular::create(時間,目標場景,樣式);
//本場景翻轉消失到另一場景(X軸) TransitionZoomFlipX::create(時間,目標場景,樣式);
//本場景翻轉消失到另一場景(Y軸) TransitionZoomFlipY::create(時間,目標場景,樣式);
|