Unity SpriteAtlas (精灵图集)

🏆 个人愚见,没事写写笔记

🏆《博客内容》:Unity3D开发内容

🏆🎉欢迎 👍点赞✍评论⭐收藏

🔎为什么要打图集?

💡打图集的目的就是减少DrawCall 提高性能

🔎Unity中打开自带的打图集功能

在工程设置面板中打开功能:Edit------>Project Setting------>Editor------>Sprite Packer(精灵包装器,可以通过Unity自带图集工具生成图集)

⚙️Mode

**📌Disabled:**默认设置,不会打包图集

**📌Enabled For Builds:**Unity仅在构建时打包图集,在编辑模式下不会打包图集

**📌Always Enabled:**Unity在构建时打包图集,在编辑模式下运行前会打包图集

**⚠️Padding Power:**选择打包算法在计算打包的精灵之间以及精灵与生成的图集边缘之间的间隔距离 这里的数字 代表2的n次方

🔎SpriteAtlas:图集

☀️图集参数
🍀Type:Master(主图集)
🍀Include in Build:选中可以在当前构建中包含图集
🍀Allow Rotation:选中此选项将在打包图集时对图片元素进行旋转,可以最大限度提高组合后的图集密度

⚠️如果是UI图集,请禁用此选项,因为打包时会将场景中UI元素旋转

🍀Tight Packing:选中此选项在打包图集时使用图片轮廓来打包,而不是根据矩形,可以最大限度提高组合后的图集密度
🍀Padding:图集中个图片的间隔像素
🍀Type:Variant(变体类型的图集)
🍀Master Atlas:关联的主图集(图集类型必须是Master)
🍀Include in Build:选中可以在当前构建中包含图集
🍀Scale:设置变体图集的缩放因子(0~1),变体图集的大小是主图集乘以Scale的结果

⚠️变体图集的主要作用是以主图集为基础,对它进行缩放产生一个新的图集副本。如果还想使用变体图集中的内容,只需要勾选变体图集的Include in Build选项,而主图集禁用此选项即可

🖥️动态加载(Resource)Multiple类型的图集资源

1.将图集资源放置Resources文件夹下

2.加载ISO_Tile_Brick_Brick_02图片

cs 复制代码
//创建空物体
GameObject gameObject = new GameObject("SpriteRendererTest");
//添加SpriteRenderer组件
SpriteRenderer sr = gameObject.AddComponent<SpriteRenderer>();
//加载的图集资源
SpriteAtlas spriteAtlas = Resources.Load<SpriteAtlas>("Sprite Atlas");
//将图集资源中的图取出并指定到SpriteRenderer的sprite属性
sr.sprite = spriteAtlas.GetSprite("ISO_Tile_Brick_Brick_02");

🚀感谢:🎉欢迎 👍点赞✍评论⭐收藏

相关推荐
高远-临客3 小时前
unity控制相机围绕物体旋转移动
unity·c#·游戏引擎
君莫愁。7 小时前
【Unity】使用InputSystem实现UI控件与键盘输入绑定以及如何快速制作虚拟摇杆
开发语言·unity·c#·游戏引擎·input system·输入系统
EQ-雪梨蛋花汤1 天前
【Part 3 Unity VR眼镜端播放器开发与优化】第一节|基于Unity的360°全景视频播放实现方案
unity·音视频·vr
海 月2 天前
Unity EventCenter 消息中心的设计与实现
unity·消息中心
为你写首诗ge2 天前
【Unity网络编程知识】Unity的 UnityWebRequest相关类学习
网络·unity
Dr.勿忘2 天前
Unity异步加载image的材质后,未正确显示的问题
ui·unity·c#·游戏引擎
死也不注释3 天前
【1——Android端添加隐私协议(unity)1/3】
android·unity·游戏引擎
冒泡P3 天前
Unity Shader入门(更新中)
unity·c#·游戏引擎·图形渲染·着色器
Thomas_YXQ3 天前
Unity3D序列化机制详解
java·开发语言·游戏·unity·游戏引擎
benben0444 天前
Unity3D仿星露谷物语开发46之种植/砍伐橡树
游戏·ui·unity·游戏引擎