如何区分animation从ios单精灵表单?

我正在使用sprite工作表的应用程序没有cocos2D帮助。

我使用下面的图像作为精灵表

在这里输入图像说明

在弓图中有许多不同的图像。 我想让他们在不同的位置animation

我按照这个教程,但它只有一个animation

UIKit的-TexturePacker

我想在没有cocos2d(使用UIKIT)的帮助下实现这一点。

任何帮助,将不胜感激。

你有两个select:

困难的方法你把精灵表原样,并提取精灵的坐标和大小。 有了这些信息,你将不得不用数据创build一个.plist文件:

 <key>green_bird</key> <dict> <key>x</key><real>2</real> <!-- x position in the sheet --> <key>y</key><real>259</real> <!-- y position in the sheet --> <key>w</key><real>126</real> <!-- width in the sheet --> <key>h</key><real>255</real> <!-- height in the sheet --> <key>oX</key><real>13</real> <!-- offset in the sprite, x--> <key>oY</key><real>2</real> <!-- offset in the sprite, y--> <key>oW</key><real>150</real> <!-- original width of the sprite --> <key>oH</key><real>261</real> <!-- original height of the sprite --> </dict> 

加载程序处理删除了精灵周围的透明度。 这是oX,oY,oW和oH值的来源。 他们给你精灵的原始大小和原始精灵的位置。 你可能会离开他们在oX = 0,oY = 0,oW和oH和w和h一样。

简单的方法

你需要一些graphics软件(Photoshop,Gimp等),并从精灵表中分割出精灵。

切割时alignment精灵:使所有同一animation的精灵大小相同。 检查它们是否重叠很好。 如果你不这样做,当你想使用精灵作为animation时,你会遇到麻烦。 他们会抖动。 你不要那个。

最后给他们好听的名字:red_bird_01.png,red_bird_02.png等等。

现在将它们拖放到TexturePacker上。 它将为您重新创build布局 – 在animation中使用表单所需的所有信息。

由于您正在使用教程中的加载程序代码,因此您也可以启用修剪function(这会消除透明度),重新填充的精灵图纸将比原来的小得多。

顺便说一句。 有一个教程解释了您在github上find的示例代码中的细节: https : //www.codeandweb.com/blog/2013/05/16/uikit-animations-with-texturepacker

关于游戏开发的最后一句话

如果你想挖掘游戏开发,我真的build议你得到一些游戏开发框架 – cocos2d,cocos2d-x,spritekit,…他们会让你的生活变得如此简单。 开始可能需要一些时间 – 但是他们处理graphics的东西效率更高,还包含物理引擎和所有其他需要的东西。 从头开始构buildUIKIT不是一个好主意。