Unity SpriteAtlas 图集 in 2018

今天终于用上了传说中的Unity图集

不得不说真的是由他方便的地方,2048 4096,大小设置比较灵活。
状态区的;Batches 是批次的意思,后边有一个参数:合并了几批

属性窗口的对象:
一列均为一张图集里的图片,那么渲染批次是1次。
一列元素中间出现了图集之外的图片,那么渲染批次在这里不是2,而是3。

我们来捋一捋,
——————第一批渲染了图集,第二批渲染了外来图,第三批又渲染了图集,这相当于加载了三次文件,读取了三张图片,三次读取。
——————计算机不是那么智能给你跳过去,读完图集再去读图集之外的图片,它是顺序读取。
——————换一种角度,先上一张其他图片,再来一列图集图片,这时,渲染批次应为2,这就是批处理了。【分静态,动态批处理,在3D里边也很常用】

说一下PS的方法:
把图标放下一张大图上,转换为多图模式,使用时拖进去使用:
一般很多素材,比如消消乐,会这么做,比较合适。
+++++缺点是数量大,容易眼花,通常碎图很多,出现N个Drawcall批次,
+++++但是图片相对少的时候,使用比较方便,
+++++不同于图集的地方是可视感觉比较好,图集里边加进去的图片是拖不出来的,即使硬加载以后,也会是mismatch的情况,类型不匹配,只能是在运行时代码加载。

图集的方法:
把精灵整理到一张透明图上边进行排列,使用的时候代码加载就行了。
右键创建一个图集【SpriteAtlas】
把自动旋转和硬打包去掉打钩
【Allow Rotation Tight Packing 这两个】
点击加号,添加图片,使用代码动态加载。

首先引用命名空间:

using UnityEngine.U2D;

然后加载精灵的主要代码【去封装成方便使用的样子就好】:
【主要是Image 和 SpriteRenderer 两个组件需要动态加载】

public ApriteAtlas asSprite sp_Start = as.GetSprite("Start");
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值