cocos2d-x之逐帧动画
cocos2d-x之逐幀動畫
?
在bool HelloWorld::init()中添加如下內容
?
//緩存,幀動畫的幀的緩存
??? auto cache = SpriteFrameCache::getInstance();
??? cache->addSpriteFramesWithFile("anim.plist");//添加幀緩存
???
??? Vector<SpriteFrame*> vec;
??? //定義一個名字
??? char name[15];
??? //清空name數組
??? memset(name, 0, 15);
???
??? //獲取每一針的名字,配置animation
??? for (int i = 0; i < 20; i ++) {
??????? //設置每一針的名字,anim后有4w位,不夠的用0填充
??????? sprintf(name, "anim%04d",i);
??????? //將每一針的名字添加到vec中
??????? vec.pushBack(cache->getSpriteFrameByName(name));
???????
? ??}
???
???
??? //設置animation工具,創建動畫,0.1f代表兩個幀之間的間隔為0.1秒,美妙10幀
??? Animation *animation = Animation::createWithSpriteFrames(vec, 0.1f);
?
??? //使用animate將animation變成動作,animation是動畫的配置,不是動作
??? Animate *animate = Animate::create(animation);
???
??? //使用Sprite去執行動畫
??? //創建sprite
??? auto sprite = Sprite::create();
??? addChild(sprite);//將sprite添加進去
??? sprite->setPosition(Point(300,300));//設置添加到的位置
??? //設置動畫不斷的運行,animate動畫一直執行
??? sprite->runAction(RepeatForever::create(animate));
轉載于:https://www.cnblogs.com/dudu580231/p/4373565.html
總結
以上是生活随笔為你收集整理的cocos2d-x之逐帧动画的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NETSH WINSOCK RESET这
- 下一篇: LoaderManager使用详解(一)