码迷,mamicode.com
首页 > 编程语言 > 详细

Unity3D&&TexturePacker

时间:2015-03-18 18:03:18      阅读:745      评论:0      收藏:0      [点我收藏+]

标签:unity   unity3d   unity3d培训   unity3d极致学院   unity3d游戏开发   

什么是TexturePacker?
       用过cocos2d的同学应该对这个比较了解吧(了解到可以直接无视下面的解释了~),不了解也没关系,TexturePacker可以说是个可以把很 多张小图集合成一张大图,并把图片的位置信息保存成文件,然后你需要做的就是解析这个图片位置信息的文件,并结合大图集合显示其中的一张小切图,这也是我 们下面需要做的。

       这样合成大图的好处我觉得是可以减少程序加载使用资源的内存,因 为OpenGL ES中每张贴图都需要设置成2的n次方才能使用。比如你有一张宽高为100x100和一张宽高为10x10的图片,如果不合成大贴图,那么需要使用 128x128和16x16的两张图片(分别是2的7次方和2的4次方),但如果使用一张大图的话,可以把100x100和10x10的图片放到 128x128的大图中,这样就用一张图片。

技术分享 

类似这样的一张大贴图就是很多小图片合成的,实际在使用时会只显示其中的一张贴图。


关于TexturePacker的使用,这里简单说下:
技术分享 

软件打开后大概界面就是如上图那样,再把你需要合成的图片拖放到右边的Sprites面板中就会自动排序并显示效果在中间了.

这里简单说明下上图左边用红色圈圈圈出来的属性说明下吧。

Data Format 这里是需要导出的数据格式,下拉框下有cocos2d、libgdx、Unity3d等等..,
本文章选择的是JSON-ARRAY;

Data file 这是导出图片集合信息文件存放的目录,后面就是需要解析这个文件,在这个选项右边的按钮可以选择存放的目录,设置好目录后Texture file选项也会自动填充对应的目录文件。

Image format 这个是设置导出大贴图图片集合的编码格式,这个看自己的具体需求设置;

第二个红色框

Border padding 是设置图片之间的间距,这个挺有用的,如果为0的话也可以,不过可能会出现切出来的图片边边有可能会切到其他图片,所以一般都要设置个值。

Allow rotation 复选框是设置你的贴图在大贴图集合里是否可以旋转的存放,一般都勾上吧,这样可以利用一些空间;
Trim 复选框是是否自动去掉小图中的多余部分。如下图,如果勾上了的话就是左图到右图的效果,把边边透明部分去掉了,这样也是可以大大的节省资源的。

技术分享

1353868973_8697.png (15.2 KB, 下载次数: 0)

下载附件  保存到相册

1 分钟前 上传


设置好了后按工具栏的Publish按钮就可以导出了,导出的目录就是设置Data file的目录;如果是免费版本导出的大图里面是有水印的,这是正常的。
导出成功后会在对应的目录下找到大贴图集合和一个文件格式;本文导出的格式就如下:

技术分享 

因为打算用LitJson这个库来解析,所以理所当然导出Json的数据结构.


其他的一些属性也是设置大图的导出一些属性,喜欢折腾的可以玩玩;

声明:此篇文档时来自于【狗刨学习网】社区,是网友自行发布的Unity3D学习文章,如果有什么内容侵犯了你的相关权益,请与官方沟通,我们会即时处理。

更多精彩内容:www.gopedu.com

Unity3D&&TexturePacker

标签:unity   unity3d   unity3d培训   unity3d极致学院   unity3d游戏开发   

原文地址:http://blog.csdn.net/sauwque/article/details/44416307

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!