游戏开发使用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命令行的更多相关文章

  1. mac 查找当前目录下所有同一类型文件,并执行命令行

    以TexturePacker举例 MAC下用TexturePacker命令行打包当前目录下所有的 *.tps文件 1.配置好tps文件需要配置好路径.参数等.(也可不配置,用命令行实现.具体参考:ht ...

  2. [原创]使用命令行工具提升cocos2d-x开发效率(一)之TexturePacker篇

    TexturePacker是一个常用的制作sprite sheet的工具,它提供了很多实用的功能. 一般我们制作sprite sheet都是使用他的gui版本,纯手工操作,就像下面这张图示的一样. 刚 ...

  3. 巧用命令行工具 redis-cli

    我们天天都在使用 Redis 内置的命令行工具 redis-cli,久而久之以为它就是一个简单的交互式 Redis 数据结构手工操作程序,但是它背后强大的功能绝大多数同学可能闻所未闻.本节我们一起来挖 ...

  4. 用命令行来安装mac应用

    今天看了下唐巧的博客,发现了这样一种宝贝呀,哈哈,分享一下 命令行工具,brew cask是一个用命令行管理Mac下应用的工具,它是基于homebrew的一个增强工具. brew cask insta ...

  5. 命令行上的narrowing(随着输入逐步减少备选项)工具

    前面在介绍zsh的时候,说过它的补全用来起比bash的Tab补全方便多了,在有多个备选项是你只要用光标键来挑选就是了,而不是全列出来提示你再多输入几个字符.而Emacs的anything / helm ...

  6. Oracle安装后命令行中运行sqlplus / as sysdba出现错误ora-01031:insufficient privileges

    Win10安装Oracle后命令行中运行sqlplus as sysdba出现错误ora-01031insufficient privileges的解决方法 情景描述 错误样例 错误分析 解决方法 情 ...

  7. 用 shell 脚本做命令行工具扩展

    问题的提出 公司开发机与远程服务器之间有严格的隔离策略,不能直接使用 ssh 登录,而必需通过跳板机.这样一来,本地与服务器之间的一些文件传输变得非常不便.经过咨询,运维教了我一招: $ nc -l ...

  8. Cmder--Windows下命令行利器

    cmder cmder是一个增强型命令行工具,不仅可以使用windows下的所有命令,更爽的是可以使用linux的命令,shell命令. 安装包 安装包链接 下载后,直接解压即用. 修改命令提示符λ为 ...

  9. .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门

    2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...

随机推荐

  1. Response.BinaryWrite()方法输出二进制图像

    protected void Page_Load(object sender, EventArgs e) { FileStream fs = new FileStream(Server.MapPath ...

  2. 《BI那点儿事》数据流转换——条件性拆分

    根据条件分割数据是一个在数据流中添加复杂逻辑的方法,它允许根据条件将数据输出到其他不同的路径中.例如,可以将TotalSugar< 27.4406的输出到一个路径,TotalSugar > ...

  3. vs 2015 写php太爽了,毕竟我接触的第一款ide就是vs啊

  4. suds调用webservice

    一.安装 pip install suds 二.日志 import logging logging.basicConfig(level=logging.INFO) logging.getLogger( ...

  5. idea 工程添加svn关联

    1.想启用idea的SVN插件还需要在idea配置一下(Ctrl + Alt + S),如下图所示: 2.接下来启用idea的版本控制插件(这里当然是启用Subversion了),打开“VCS”菜单项 ...

  6. Java面向对象三大特点之封装

    封装 含义:将对象的属性和行为封装起来,而将对象的属性和行为封装起来的载体是类,类通常对客户隐藏其实现细节,这就是封装的思想.封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的 ...

  7. Server asks us to fall back to SIMPLE auth, but this client is configured to only allow secure connections.

    我是在flume向hdfs 写(sink)数据时遇到的这个错误. Server (是指hdfs) asks us to fall back to SIMPLE auth, but this clien ...

  8. nodejs的第一天学习笔记

    一. js的模块化 什么是模块化: 模块化的概念最早是后台,随着ajax技术的兴起,js在编程中所占的地位越来越高,同时js的文件也相应的越来越多.为了方便文件的管理和更新,提出了js文件的模块 化, ...

  9. phalcon: update修改数据却变成了insert插入数据

    phalcon: 在对表进行操作是,update修改数据却变成了insert插入数据. 发现,update的时,无论怎么加where都会变成了insert插入数据. 检查了一下表,原来是表没有 主键引 ...

  10. CSS样式使用

    <html> <head> <style type = "text/css">                          .h{    ...