cocos2d-3.x 学习杂记
学习cocos中遇到的一些零散问题,纪录下来。
Animation的加载问题
actorSpriteCache->addSpriteFramesWithFile("actor.plist");
// load frames -- 1
Animation* ani = Animcation::create();
for( int i=0; i<50; i++)
{
ani->addSpriteFrame(actorSpriteCache->getSpriteFrameByName(StringUtils::format("actor_%02d.png", i) ));
}
ani->setDelayPerUnit(0.2f);
ani->setRestoreOriginalFrame(true);
// run animation -- 2
auto walkAni = Animate::create(ani[1]);
actor->runAction(walkAni);
如上所示,这样执行动画没有问题,但是如果想把1,2分开,即我先预先加载好动画,然后待需要的时候就直接执行,如我在init函数中先进行1, 然后在事件函数中进行2就会报错,具体我猜测是Animation并不能持久话保存动画,addSpriteFrame之后若为执行则会被回收。