著名的TexturePacker 已经升级到3.0了,下载地址: http://www.codeandweb.com/texturepackerhtml
免费 license 申请地址:
http://www.codeandweb.com/request-free-licenseios
TexturePacker 的使用很是简单,启动后的界面以下:程序员
看箭头说明,只须要把包含小图片的文件夹拖动到右侧的‘Sprites’栏中便可,以下:web
能够看到,TexturePacker当即生成了一个SpriteSheet。在左侧TextureSettings中设置各类参数和文件输出路径:shell
点击上方工具栏中的Publish,就能够把对应的纹理图片和数据文件输出到指定位置了。xcode
上方Save按钮能够将整个设置保存成一个工程文件,之后作修改时能够直接打开这个工程。app
TexturePacker 会”监听“右侧的Sprites文件夹,须要增长、删除或修改单独的图片,只须要在直接在文件系统中增长、删除或修改就能够了,不须要再次从TexturePacker工程中添加或删除,这是TexturePacker一个很是好用的功能。工具
TexturePacker支持的游戏引擎和文件格式很是丰富,几乎涵盖了目前全部常见技术。优化
这是一个3.0中新曾的功能,也是我一直期待的。在此以前,想要制做retina和非retina的两种spritesheet,须要手工操做:先 生成retina的spritesheet,调整scale参数为0.5,修改输入文件名称,而后从新publish。虽然看起来不是很麻烦,可是对于游 戏开发来讲,这个过程天天可能要重复几十次,出了错还每每很难发现。ui
因此这是一个很是实用的功能:点击左侧设置中的AutoSD齿轮图标:
在弹出框中能够看到有几个预设,这里咱们选cocos2d hd/sd,点击Apply,设置就会添加到下方的列表中:
列表中每一项表明一个新增的输出设置,上图中这个设置就是把现有设置缩放0.5倍,而后把文件扩展名中”-hd.”替换成”.” 因此在前面的基础设置中,输出文件名称必定要是“-hd.”的后缀,如spritesheet-hd.png 和spritesheet-hd.plist,这样这里才会正确识别。
设置完成后,点击publish从新输出,能够看到,TexturePacker已经同事输出了4个文件:
是不很爽啊,哈哈:)
虽然TexturePacker已经大大简化了咱们生成SpriteSheet的过程,可是对于游戏开发,咱们老是在不停的修改图片,从新生成 SpriteSheet,这样一个机械化的动做,明显是在向程序员们挑衅。TexturePacker的做者Andreas显然是个合格的程序员,早已经 为你们作了命令行接口,让这一切自动化吧:
#! /bin/sh TP=/usr/local/bin/TexturePacker if [ "${ACTION}" = "clean" ] then # remove sheets - 这里要和 *.tps 中指定的输出文件匹配 rm ../Resources/sheet*.png rm ../Resources/sheet*.plist else # 执行说有的tps工程文件,从新输出全部SpriteSheet ${TP} *.tps fi exit 0
这样,每次在XCode中build时,都会从新生成全部的SpriteSheet,不再用手工生成了,长此以往,你甚至会忘记TexturePacker的存在!
关于XCode的集成,TexturePacker官网有更详尽的教程,参见:
关于TexturePacker,著名的RayWenderlich有一篇很是详细的文章:
这篇文章的中文译文是 @子龙山人 翻译的,参见在cocos2d里面如何使用Texture Packer和像素格式来优化spritesheet