巧用TexturePacker命令行
游戏开发使用TexturePacker来生成图片的atlas sheet, 工具非常好用。 一般GUI的方法, 新建一个tps文件, 将要图片加载进来,调整参数和输出路径, 最后点publish。
在实际的项目中, 需更新atlas sheet,每次都要打开tps,等着TexturePacker启动, 点publish,尤其是要支持多个设备分辨率的时候, 比如iphone, 需要至少iphone, iphone retina, iphone5三种分辨率, 如果是同时支持ipad的,则需要5个tps文件,像我的项目, 每个分辨率有3个atlas sheet, 这样美术资源更新时,最糟的情况需要5x3=15次手动开启TexturePacker点publish的操作。 不但麻烦,而且容易出错。
其实,可用TexturePacker提供的命令行工具, 将这些操作写到脚本里, 每次执行一下脚本就自动更新了。 TP的命令行工具非常强大,它提供了很多参数, 可以用命令行的方式从无到有创建atlas sheet(我猜想GUI实际就是调用的命令行)。去看TP的官网命令行介绍, 未免有些头大,参数太多, 一下子不知道该怎么写。
好在大部分人都是已经有了tps文件, 需要使用命令行来代替手动操作。如果是这样,那么那些选项就和你没什么直接关系了。你只需要在tps里面, 把参数都设好, 然后终端里执行一句:
/usr/local/bin/TexturePacker xxx.tps
- 前者是TP命令行工具的默认路径,注意, 要事先安装命令行工具, 在TP里点TexturePacker/Install Command Line Tool, 安装到该默认路径。
- 后者xxx.tps是你的tps文件的路径
只需要这一句话, 就相当于你点开TexturePacker, open xxx.tps文件, 再点击publish.
另外, 还有个窍门,就是尽量使用Add Folder添加图片, 每次只需将新的美术资源放到对应的文件夹下, 新的美术图片自动会被打包,而无需启动GUI手动添加图片.这在美术资源经常变动时,非常方便.
注意, 很多例子(比如大名鼎鼎的Ray Wenderlich)将命令行集成到xcode中,每次clean的时候清除atlas sheet, 每次build的时候再重新生成. 这样虽然帅气, 但是我个人不推荐. 因为日常开发, 更新美术资源的情况毕竟是少数, 如果集成到xcode中,每次clean之后, 不管是否真的有美术资源的更新, 都要重新生成, 编译的时间会增加很多, 一个大的atlas可能接近10M, 生成一个是需要一点时间的, 每次编译这样搞是完全没有必要的. 所以我自己另外写了个脚本, 更新美术后, 执行一次即可.
巧用TexturePacker命令行的更多相关文章
- mac 查找当前目录下所有同一类型文件,并执行命令行
以TexturePacker举例 MAC下用TexturePacker命令行打包当前目录下所有的 *.tps文件 1.配置好tps文件需要配置好路径.参数等.(也可不配置,用命令行实现.具体参考:ht ...
- [原创]使用命令行工具提升cocos2d-x开发效率(一)之TexturePacker篇
TexturePacker是一个常用的制作sprite sheet的工具,它提供了很多实用的功能. 一般我们制作sprite sheet都是使用他的gui版本,纯手工操作,就像下面这张图示的一样. 刚 ...
- 巧用命令行工具 redis-cli
我们天天都在使用 Redis 内置的命令行工具 redis-cli,久而久之以为它就是一个简单的交互式 Redis 数据结构手工操作程序,但是它背后强大的功能绝大多数同学可能闻所未闻.本节我们一起来挖 ...
- 用命令行来安装mac应用
今天看了下唐巧的博客,发现了这样一种宝贝呀,哈哈,分享一下 命令行工具,brew cask是一个用命令行管理Mac下应用的工具,它是基于homebrew的一个增强工具. brew cask insta ...
- 命令行上的narrowing(随着输入逐步减少备选项)工具
前面在介绍zsh的时候,说过它的补全用来起比bash的Tab补全方便多了,在有多个备选项是你只要用光标键来挑选就是了,而不是全列出来提示你再多输入几个字符.而Emacs的anything / helm ...
- Oracle安装后命令行中运行sqlplus / as sysdba出现错误ora-01031:insufficient privileges
Win10安装Oracle后命令行中运行sqlplus as sysdba出现错误ora-01031insufficient privileges的解决方法 情景描述 错误样例 错误分析 解决方法 情 ...
- 用 shell 脚本做命令行工具扩展
问题的提出 公司开发机与远程服务器之间有严格的隔离策略,不能直接使用 ssh 登录,而必需通过跳板机.这样一来,本地与服务器之间的一些文件传输变得非常不便.经过咨询,运维教了我一招: $ nc -l ...
- Cmder--Windows下命令行利器
cmder cmder是一个增强型命令行工具,不仅可以使用windows下的所有命令,更爽的是可以使用linux的命令,shell命令. 安装包 安装包链接 下载后,直接解压即用. 修改命令提示符λ为 ...
- .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门
2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...
随机推荐
- 遗传算法在JobShop中的应用研究(part 2:编码)
编码 在上一篇博客中我们讨论了车间调度问题的编码,具体说就是根据工件的个数和每个工件的工序数来生成12122这样的数字排列,具体的说一个工件包含多少道工序,那么这个工件的编号就出现多少次.从12122 ...
- Maven学习(二) -- 坐标和依赖
标签(空格分隔): 学习笔记 坐标 实际就像在几何中,我们用一对坐标(x, y)来表示坐标系中唯一的点:或者我们可以用(经度,纬度)来表示地球上的某一个位置,在Maven的世界中,有坐标来唯一的表示项 ...
- 区别ie8和ie9的方法
众所周知 区别ie6~8的方法是: width:10px;//chrome width:10px\9;//ie8+ *width:10px;//ie7 _width:10px;//ie6 区别ie8以 ...
- 【数位dp】
hdu5787 问:L ~ R有多少个数是K-wolf Number?其中,K-wolf Number的定义是这个数在十进制下,任意相邻的K个字符没有相同的. dp[i][j][k]表示有i个空位可填 ...
- table插件实现
选择.取消.全选.全部取消.获取行ids /** * Created by lizongqiong on 2016/1/8. */ var $ = require('jquery'); var tab ...
- CSS使用总结
1.visibility和display的区别: visibility:visible; 显示visibility:hidden; 隐藏,但是保留元素所占的空间display:block; ...
- daterangepicker 双日历/格式化日期/日期限制minDate,maxDate
var locale = { "format": 'YYYY/MM/DD', "separator": " - ", "apply ...
- Python 日期格式转换
经常需要爬取网站上的时间信息,不同的网站又有不同的日期显示方式.而我需要将日期格式转化为一种特定的格式,所以为了简便和学习,记录下各种不同的日期格式转换. 日期格式化符号: %y :两位数的年份表示( ...
- JQuery中的id选择器含有特殊字符时,不能选中dom元素
1.jquery类库在我们实际项目中用的很多,大家经常需要根据控件的id,获取对应的html元素.但是:当id含有特殊字符的时候,是不能选中的 2.jquery的id选择器只支持,单词.阿拉伯数字.下 ...
- MySQL数据库管理用户权限
http://blog.itpub.net/7607759/viewspace-675079/ 2.2 授予权限 前面提到了grant命令,grant的语法看起来可是相当复杂的呐: GRANT pri ...