帧动画在cocos2d里面用到是比较多的…简单的例子:人物的移动效果,就可以通过帧动画+MoveBy动画使用Spawn(同时执行的组合动作)加上Sequence(顺序执行的组合动作)来完成。

现在先给出一段代码,然后再进行讲解。

上面的代码是一个 Animation指针类型的Role类成员函数。拥有一个参数direction(方向)

RoleDirection实际上是这样的:

就是一个简单的枚举类型,表示着四个方向,没什么难度。

然后函数代码第一句话:生成纹理缓存,这个就是加载图片。

接下来,创建六幅帧动画(SpriteFrame 精灵帧)。

然后放到一个Vector里面(Vector 容器,动态数组,可以自动变长的数组)。

然后根据帧动画序列生成一个Animation。(请注意时间参数)

 

然后接下来我们看看哪里用到了这个Animation:

可以看到:

在上面的menuCallBackMove这个函数里,我们用到了创建Animation的代码:

首先,我们对方向进行了判断,然后作为参数传递到createAnimationByDirection这个函数里,得到一个Animation。

然后使用Animation生成了一个Animate

然后生成一个moveBy动作

接下来组合 执行这两个动作。

这就是Animation的一个简单用法。

—————————————————————MORE—————————————————————————————

通过plist文件创建Animation 然后创建Animate 然后创建动作,执行动作:

 

其实使用精灵动画的方法就是:

  • 加载图片
  • 放到Vector(精灵帧缓存序列)
  • 生成Animation
  • 生成Animate
  • 生成动作
  • 执行

 

当然,生成Animation的方法不止这一种,还可以用图片文件等等方法:

可以参考:

http://my.oschina.net/Jacedy/blog/301360

 

【cocos2d】Animation和Animate帧动画
Tagged on: