无法在cocos2d中加载plist动画“未找到动画”

时间:2016-01-22 16:36:47

标签: animation cocos2d-x sprite

我是cocos2dx的新手,我在Windows上使用cocos2dx 3.9获得了一个C ++项目,我在这个页面引用了文件动画示例http://www.cocos2d-x.org/wiki/Sprite_Sheet_Animation;我无法让plist加载动画。

当我尝试加载plist时:

auto cache = AnimationCache::getInstance();
cache->addAnimationsWithFile( "explosion.plist" );

日志显示:

cocos2d: AnimationCache: No animations were found in provided dictionary.

我错过了什么?

此外,我不确定在示例中使用什么代替Node。它只是第一个动画帧键吗?

http://pastebin.com/kZpcCEgp

1 个答案:

答案 0 :(得分:2)

  

您使用的上述spritesheet没有扩展名   所有文件中的.png。您可以从纹理创建新的spritesheet   封隔器。

     

要获取样本spritesheet,请先转到   `〜你,茯苓目录/ cocos2d的-X-3.9 /测试/ CPP-测试/资源/ zwoptex /   并复制grossini.plist& grossini.png到您的Resources文件夹。   Sample plist Link

现在从spritesheet运行帧动画,然后首先使用以下命令添加帧:

SELECT *
FROM `financial_trxn` ft
  LEFT JOIN entity_financial_trxn eft
  ON eft.financial_trxn_id = ft.id 
 where eft.entity_table = 'contribution' OR eft.entity_table = 'financial_item'

现在在动画缓存中添加帧:

SpriteFrameCache::getInstance()->addSpriteFramesWithFile("grossini.plist");

现在运行动画

Vector<SpriteFrame*> animFrames(15);
char str[100] = {0};
for(int i = 1; i < 15; i++)
{
    sprintf(str, "grossini_dance_%02d.png",i);
    auto frame = SpriteFrame::create(str,Rect(0,0,40,40)); //we assume that the sprites' dimentions are 40*40 rectangles.
    animFrames.pushBack(frame);
}

希望它有所帮助。