Cocos2d x之場景切換

2021-06-17 15:56:29 字數 1686 閱讀 7258

在很多rpg遊戲中大部分存在多個場景,如開始的歡迎介面、選單介面、戰鬥介面、、、、、,

場景切換只需要呼叫ccdirector::shareddirector()->replacescene(s); s為新的場景,這句**的是含意,是用新的場景s去替換掉舊的場景,但是這樣的場景替換,來得太突然,給使用者的感覺不太好,我們需要一種更好更自然的替換方式。

如何在這些場景切換中顯得更加自然,在cocos2d-x中封裝好了這些場景切換類

ctransitionjumpzoom::create(t, s)                                     原場景先縮小,然後新場景跳躍進入

ctransitionprogressradialccw::create(t, s)                    

ctransitionprogressradialcw::create(t, s)      

ctransitionprogresshorizontal::create(t, s)

ctransitionprogressvertical::create(t, s)

ctransitionprogressinout::create(t, s)

ctransitionprogressoutin::create(t, s)

ctransitioncrossfade::create(t,s)

cctransitionfadetr::create(t, s)

cctransitionfadebl::create(t, s)

cctransitionfadeup::create(t, s)

cctransitionfadedown::create(t, s)

cctransitionturnofftiles::create(t, s)

cctransitionsplitrows::create(t, s)

cctransitionsplitcols::create(t, s)

cctransitionfade::create(t, s)

cctransitionshrinkgrow::create(t, s)

cctransitionrotozoom::create(t, s)

cctransitionmoveinl::create(t, s)

cctransitionmoveinr::create(t, s)

cctransitionmoveint::create(t, s)

cctransitionmoveinb::create(t, s)

cctransitionslideinl::create(t, s)

cctransitionslideinr::create(t, s)

cctransitionslideint::create(t, s)

cctransitionslideinb::create(t, s)

第乙個引數是動畫的時間(flaot型別),單位是秒,第二個引數是新的場景,可以去過相應的需求選擇上面的動畫

ccdirector::shareddirector()->replacescene(cctransitionslideinl::create(t,s));

這樣就完成了場景的動態切換

總得來說,動態的場景替換,分為三步:

1、建立乙個新的場景

2、建立場景替換動畫

3、替換舊的場景

cocos2dx切換場景

分享一下cocos2dx切換場景函式 場景a切換到場景b,有切換特效 呼叫順序如下 aaabababa a 建構函式 a onenter a onentertransitiondidfinish b 建構函式 a onexittransitiondidstart b onenter a onexit...

Cocos2d x中場景切換

ccscene場景切換 場景的切換效果 1 執行場景 1 ccscene pscene helloworld scene 2 pdirector runwithscene pscene 2 替換場景 1 ccscene pscene scenetestscene scene 2 ccdirector...

cocos2dx 場景切換動畫效果

cctransitionfade,漸隱效果 cctransitionfadetr,碎片效果 cctransitionjumpzoom,跳動效果 cctransitionmoveinl,從左向右移動 cctransitionpageturn,翻頁效果 cctransitionradialccw,鐘擺效...