Texture Packer 和XCode 4.0以上集成

来源:互联网 发布:615所待遇知乎 编辑:程序博客网 时间:2024/05/16 07:44

Texture Packer 和XCode 4.0以上集成

ps:这个文章是在子龙山人的教程衍生的,下面有些代码是从他教程里借鉴过来的,在这里我要谢谢子龙山人,他的教程让我受益匪浅。附上子龙山人的教程链接 http://www.cnblogs.com/zilongshanren/archive/2011/03/18/1988097.html

在这里我新建了一个名称为TextureFun的cocos2d工程来说明,确保你安装了最新版本的cocos2d,获得最新版本非常重要,因为新版本里面增加了对一些新的图片格式的支持,而这恰恰是这篇文章后面要用到的。

现在废话少说,直接进入重点,右键点击“Resources”,选择“Add\New File...“,然后选择 Mac OS X\Other\Shell Script,如下图所示,然后选择下一点。并命名为PackTextures.sh,单击完成,把文件保存在"TextureFun\Resources\"目录下面


 然后使用下面的代码替换掉PackTextures.sh里面的内容:

复制代码
#!/bin/sh

TP
="/usr/local/bin/TexturePacker"

if [ "${ACTION}"="clean" ]
then
echo 
"cleaning..."

rm resources
/sprites-hd.png# 这里最好用sprites-hd.png,不要使用sprites-hd.pvr.ccz,因为高清模式下,把sprite加在spritesheet上面会出现问题,下面非高清模式也一样
rm resources
/sprites-hd.plist

rm resources/sprites.png
rm resources
/sprites-hd.plist


# ....
# add all files to be removed in clean phase
# ....
else
echo 
"building..."

# create hd assets
${TP}--smart-update \
--format cocos2d \
--data resources/sprites-hd.plist \
--sheet resources/sprites-hd.pvr.ccz \
--dither-fs-alpha \
--opt RGBA8888 \
--auto-sd \#只要增加这一行就可以自动生成普清图片
Art
/sprites/*.png #这个是你自己提供图片资源文件路径(一定要确保正确,否则会找不到图片产生问题)

# ....
# add other sheets to create here
# ....
fi
exit 
0
复制代码

  所有Texture Packer GUI界面能够做的事情,命令行工具也能做。如果你在命令行里面输入“TexturePacker”,你将会看到一系列它能够接收的参数说明。

  这个脚本仅仅通过运行TexturePacker来从你的Art目录下读取精灵文件并创建spritesheet--就像你之前用GUI工具所做的一样。你可以通过查看TexturePacker命令行工具帮助来获得更多有关每个参数具体的用法。

  接下来,你需要让你的工程在编译的时间能够运行这个脚本。右键点击Targets,选择“File\New\Target...”,然后选择“Mac OS X\Other\External Build System”(不是Shell Script Target),然后点击下一步,重命名这个Target为TexturePacker,最后点击Finish。

然后修改你新建的target,然后把里面的内容设置成下图所示:



最后一步就是把这个target设置成你的程序的一个依赖。在TextureFun target上面单击,然后选择Build Phases tab,再在Target Dependencies窗口下面选择+按钮。然后从列表中选择TexturePacker,最后单击Add Target。如图下所示

编译并运行你的程序,你将会从你的构建结果信息中看到Texture Packer的一些输出信息,由此来判断是否一切运转良好。

  如果你看到这些输出信息的话,那么意味着如果你想要增加一些新的文件到spritesheet中,你只需要把这些新的文件拖到指定的文件下面(这里是Art目录),然后重新编译一下,那么就会自动生成新的spritesheet。相反,如果你要移除一些精灵图片,再重新编译一下,也ok。是不是非常方便?

     如果大家有什么问题,或者不清楚的地方,可以留言。


原创粉丝点击