概念
在自定义的界面中通常会有自定义view,尤其在一些2D小游戏当中,就会使用一连串的任务动作图片,这一串原始图片通常是美工修出来的一个个图片,组合在一起就是一个任务的一些列动作,当然也可以合成动态图:
在使用的时候当然也可以通过读取资源文件,一个一个的显示在界面上,但是通常图片资源文件会很多,就会显得工程很乱。cocos2d中有一个更加高效的方式,就是精灵表单SpriteSheet。SpriteSheet是将分散的一些列图片组合成异常图片,在使用的时候,通过图片上的位置和大小,将图片截取出来,显示在图片上。
这里使用到的工具是TexturePacker,该工具将图片组合到一起,同时保存原图在生成图片上的所有位置和大小的信息。生成的图片如下:
在图片上可以看到,生成的图片位置的顺序是错乱的,而且图片的长宽并不一样,图片中的每一个图片也没有对齐。这样做的好处就是有些表单生成后,会减少表单图片大小,节省空间,而且图片是可以旋转后生成到表单图片中。
在使用这样的表单图片的时候,由于位置和大小都是不同的,所以不能同通过简单的剪裁就能获取到完成的图片,需要更具图片的位置信息才能使用,TexturePacker工具会同时生成一个文档,包含图片的位置、大小、是否旋转。生成的格式可以通过设置,选择生成为xml、json或者其他的文件格式