一.设计的目的:让开发者忘记图集的概念,使用小图去开发UI,unity自动会将这些小图按照tag名字打到图集里面去。

二.启用的方式:在Edit->Project Settings->Editor->Sprite Packer->Mode中进行设置:
1.Disabled:不启用。
2.Enabled For Builds:打包发布时启用。
3.Always Enabled:一直启用,在开发和打包发布阶段都启用,方便开发人员在开发阶段去查看unity自动生成的图集信息,默认推荐使用这种方式。

三.打图集策略:
1.DefaultPackerPolicy:是默认的打包方式,也是矩形打包方式。他会把所有的小图按照矩形的方式来排列,如果宽高不一样的图片,它们会自动补齐,使用方式就是tag设置时加上”[RECT]图集名”来设置。
2.TightPackerPolicy:是紧密打包方式,也就是尽可能的把图片都打包在图集上,这种方式要比DefaultPackerPolicy打包的图片更多一些,也就是更省空间,使用方式就是tag设置时加上”[TIGHT]图集名”来设置。
3.TightRotateEnabledPackerPolicy:是紧密可旋转打包方式,也就是使用紧密打包,并且允许精灵进行旋转。
4.CustomPackerPolicy:是自定义打包方式,需要在一个编辑器脚本类中实现UnityEditor.Sprites.IPackerPolicy接口,并重写GetVersion和OnGroupAtlase两个接口。

四.图集大小:sprite packer会把相同tagname以及相同压缩格式的资源打到相同的图集里面。所以影响图集大小主要集中在2个方面:
1.资源的分辨率(max size):设置值大于资源本身时,像素没有压缩,否则像素会进行压缩。
2.资源的压缩格式(format):android和ios都公用rgba模式,也有各自不同的模式,对于android而言,默认的压缩格式是etc2,当手机不支持etc2时会自动转换成rgba模式,但是所有的android手机都支持etc1模式,只是压缩效果差些;对于ios而言,默认的压缩格式是pvrtc。

鉴于以上两点,在sprite packer打的图集资源使用压缩的资源一般效果不是很好,而使用rgba模式效果是好,但是图集会变大,从而增大内存占用,并且相同tagname的资源压缩格式不同,这样会生成多个图集,从而增加渲染批次,所以资源使用什么样的分辨率以及采取什么样的压缩格式,要具体情况具体分析。

五.图集热更:把资源设置assetbundle名字,这样在打出assetbundle时,assetbundle中就有里面资源所需的图集,所以不要相同图集的资源在不同的assetbundle里面,否则这些assetbundle都会有一份图集对象,从而增大了包大小。通过热更assetbundle实现热更assetbundle中所包含的图集,当图集发生变化时,包含该图集的所有assetbundle也会发生变化,从而保证每个assetbundle中的资源都是从该资源所在最新图集里面获取。


assetbundle中含有资源所属于的图集。

六.图集动态使用:
通过加载assetbundle,进而加载assetbundle中的资源名来进行使用,unity会自动从assetbundle中所包含的图集中获取指定资源名所对应的贴图对象。

七.注意事项:
1.放置到Resources目录下的资源是不会被sprite pack打到图集里面去的。
2.sprite pack生成的图集默认放在Libary/AtlasCache里面。
3.重新打包(Repack)按钮只有当我们选择了非默认打包策略(DefaultPackerPolicy)时才会可用。

参照网址:
1.http://www.xuanyusong.com/archives/3304
2.http://www.xuanyusong.com/archives/3315
3.http://www.xuanyusong.com/archives/3499
4.http://www.xuanyusong.com/archives/3768

UGUI 图集打包工具Sprite Packer相关推荐

  1. Unity打包AssetBundle自动分析资源依赖关系(包括UGUI图集打包)

    https://blog.csdn.net/u012740992/article/details/79371986 怎么分析资源的依赖关系呢,并设置AssetBundleName呢? 我们检测资源之间 ...

  2. Unity UGUI图集打包与动态使用(TexturePacker)

    TexturePacker 在用UGUI时,我们需要将一个个小图打包成图集,然后将图集一次性加载以内存换取图片读取效率,即减小Drawcall. UGUI打包并使用图集有两种方法:一种是使用系统自带的 ...

  3. Unity3d之UGUI图集打包与动态使用(TexturePacker)

    前言 在用UGUI时,我们也需要将一个个小图打包成图集,以减小Drawcall(类似coco2d-x一样,打包成图集一次性加载以内存换取图片读取效率),UGUI打包并使用图集有两种方法:一种是使用系统 ...

  4. TexturePacker图集打包工具在Unity3D中的使用介绍

    在游戏开发过程中,图片的使用是必不可少的,尤其是在UI部分,往往会使用大量的图片.如果每一张图片都是单独使用的话,实际上会对性能造成很大的损耗的. 这时候我们往往是把需要的图片资源进行分类,然后按照需 ...

  5. Unity UGUI图集专题

    一:图集介绍 什么是图集:我们可以将其理解为将一系列小图合并为一张大图.使用图集可以减少drawcall,提升效率. ​ 游戏中的图片模型最终是要给到显卡去渲染的,然后CPU通知GPU要开始渲染,这一 ...

  6. 图集打包算法_UGUI打包图集工具-插件Simple Sprite Packer详解

    做过NGUI或者Unity2D[更熟悉]游戏的的人,应该记得,比如要做一个角色的动画,美术给的一张大图[里面包含很多的小图,是角色的各个部位].这张大图就可以理解为一张图集! NGUI也是类似. 那么 ...

  7. Unity3d Ugui 22图集Sprite Packer

    目录 一:版本变化 二:为什么使用图集? 二:打包方式 三:如何使用 四:Sprite Packer面板详解 五:打图集的常见问题 六:工具脚本 一:版本变化 图集Sprite Packer在 Uni ...

  8. UGUI Sprite Packer:图集自动ETC1+Alpha

    http://www.jianshu.com/p/a08b861af4e9 今天研究了一下UGUI的图集生成,具体步骤就是设置Texture的Packing Tag名称,并且Sprite Mode设置 ...

  9. Unity5 Sprite 图集打包 AssetBundle 更新探索

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 自从Un ...

最新文章

  1. shell截取字符串方法
  2. 深入理解并发内存模型||JMM与内存屏障||多核并发缓存架构 ||JMM内存模型||volatile 关键字的作用 ||JMM 数据原子操作||JMM缓存不一致的问题
  3. 作为医生,除了买花,还能在情人节用什么特别的方式表白呢?(情书-病历体)...
  4. 结合“性能监视器” 排查、处理性能瓶颈导致应用吞吐率等指标上不去的问题...
  5. 能源36号文解读_IDC报告预测:今年中国新能源汽车销量将达116万辆,未来五年复合增长率36%_详细解读_最新资讯_热点事件...
  6. python基础课程4(看代码看注释)--爬虫爬取网页信息
  7. python人脸识别库_基于facenet的实时人脸识别系统
  8. 2016蓝桥杯C++A:快速排序(详解版,很快掌握)
  9. IOS开发ui篇-UITableviewcell的性能问题
  10. python——字典攻击
  11. Linux下Intel网卡固件烧写工具
  12. 数采仪厂家_环保数采仪生产厂家
  13. CapstoneCS5211|CS5211电路|CS5211中文规格书|CS5211设计eDP到LVDS转接板/转换器方案
  14. js获取传统节假日_js判断节假日实例代码
  15. 生成数据库结构字段SQL语句
  16. 计算机基础(9)——win10(5)——WIN10怎么把IE浏览器放到桌面
  17. 人工智能专家:AI并不像你想象的那么先进
  18. c++ 开发工具推荐
  19. 如何设置共享文件夹?
  20. LaTeX 2会议期刊模板下载

热门文章

  1. 【蓝桥杯练习--递归】费解的开关
  2. Android进程间通讯AIDL使用及问题详解(雷惊风)
  3. 职场分享--职场中如何做一名优秀的员工
  4. php中column函数,PHP array_column() 函数用法及示例
  5. 微型计算机外部设备接口,第五章 微型计算机输入输出接口
  6. centos7 配置phpAdmin
  7. Dynamic Web Module 4.0 requires Java 1.8 or newer.
  8. 清华大学公开课线性代数2——第12讲:复数与复矩阵
  9. anaconda卡在loading application
  10. 阿里云服务器 云对象存储OOS(一) ---入门级操作