假设我的项目中有120个图像文件。我想用它们全部为精灵制作动画。
我在想这个方法:
CCSprite *temp = [CCSprite spriteWithFile:@"TheNextSprite.png"];
[sprite setTexture:[temp texture]];
以上代码每0.03秒运行一次。
精灵是我的动画CCSprite。 temp 只是一个临时的CCSprite,用下一个动画帧的图像文件初始化,所以我可以稍后拍摄它的纹理。
这样有效吗?我听说我可以将CCAnimate与CCSpriteBatchNode一起使用,但这只适用于一个精灵。另外我有120(大)帧 - 它们不适合2048x2048纹理画布。
答案 0 :(得分:1)
查看CCAnimation
,CCAnimate
和CCSpriteFrame
类。
Sprite帧是你想要模仿的东西,是精灵映射到的纹理的“片段”。它们最好在与spritesheets结合使用时使用,并非动画中的所有精灵都需要在同一个精灵表中。
CCAnimation
允许您从一系列此类帧中创建动画。
CCAnimate
允许您将该动画作为动作运行:
[node runAction:[CCAnimate actionWithAnimation:animationInstance restoreOriginal:NO]];