日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

cocos2d-x 连帧动画实现

發布時間:2025/5/22 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 cocos2d-x 连帧动画实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最開始的動畫片也是用圖片疊加的方法,下面介紹如何有多張圖片實現一個小小的動畫:

首先,把你要進行疊加的圖片命名成 Name(數字)的形式:如 name1,name2... ...

然后在你的init函數里面:

CCSprite *p2 = CCSprite::spriteWithFile("name1.png");//首先還是要創建一個精靈對象


p2->setPosition(CCPointMake(240,160));

this->addChild (p2,1);

CCAnimation* animation = CCAnimation::animation();

??char frameName[100] = {0};

??for( int i=1;i<=4;i++) ???//圖片的張數

  {

    ????sprintf(frameName, "name%d.png", i);???????//循環

     ? animation->addFrameWithFileName(frameName); ??

  ?}

??  CCActionInterval*? action = CCAnimate::actionWithDuration(0.5f, animation, false);???//0.5f 是切換圖片的時間

  CCActionInterval*? action_back = action->reverse();//返回到原先的狀態

  sp2->runAction(action);

?

這樣就實現了簡單的連幀動畫了!

同時你可以定義其他的動作:

CCMoveTo

CCMoveBy

CCJumpTo

。。。

等等其他的動作,然后用 sp2->runAction(CCSequence::actions(action1,action2,action3,NULL));//不要忘了加NULL哦
??

有的時候你想執行一個動作之后,經過一段時間再去執行另外一個動作

這時候你可以用到延時:

延時是:CCDelayTime

cocos2d-x都是英文式的 意思都很容易看懂,有時候你可以在自動補齊中找到你自己想要的函數,然后看需要加入什么參數。

如上面的 你在執行了action1后想經過三秒再執行action2

可以這樣實現

sp2->runAction(CCSequence::actions(action1,CCDelayTime:;actionWithDuration(3),action2,NULL));//actionWithDuration()里面的參數是時間

?

如有錯誤,希望大家提出來啊!!謝謝啊!!!!!

轉載于:https://www.cnblogs.com/liutianwen/archive/2012/04/18/cocos2d-xD.html

總結

以上是生活随笔為你收集整理的cocos2d-x 连帧动画实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。