0

我目前正在开发一个在 iOS 环境下使用动画的简单游戏。我有一个 .png 文件 在此处输入图像描述 ,其中包含与动画相关的所有帧。我有一些疑问:

  1. 是否可以直接使用此图像来提取创建 CCSpriteBatchNode 所需的单个帧图像?

  2. 有没有什么方法可以直接使用这个单一的图像来创建动画而不使用 .plist 文件?

  3. 或者我必须使用 TexturePacker 之类的软件来使用动画的单个帧图像创建 .png 和 .plist 之类的文件?

一世)

在此处输入图像描述

ii) 在此处输入图像描述(使用这些)

提前致谢。:-)

4

2 回答 2

2

1 和 2:是的。假设精灵帧都是相同的大小,这是相当微不足道的。只需将用于 CCSprite 的纹理矩形偏移每帧的宽度即可。您可以手动创建 CCSpriteFrame 对象,然后在 CCSpriteFrameCache 上调用 addSpriteFrame:name: 以按名称缓存和索引它们 - 如果您需要的话。

然后,如果您有多个使用此动画的角色,您可以使用纹理来初始化批处理节点。如果这是您的播放器动画(即只有一个精灵使用纹理),您可以跳过创建精灵批处理节点,因为它只是在任何给定时间显示相同纹理的多个帧之一的精灵。

3:TexturePacker 肯定会让你的生活轻松很多。您不必编写额外的代码(可能包含错误)来处理动画帧,TP 可以更紧密地打包图像,消除透明区域和重复帧。

于 2013-10-29T11:11:42.893 回答
0

您最好使用任何图像分割在线工具分割此图像并提取单个图像。然后使用TexturePacker生成 plist 数据文件和 CCSpriteBatchNode 理解的纹理图像文件。

于 2013-10-29T09:06:53.550 回答