Version: 2017.2
精灵遮罩
Tilemap

精灵图集

精灵图集 (Sprite Atlas) 是一种资源

精灵图集是通过 Editor 中的菜单选项创建的,并将作为项目文件夹中的资源 (*.spriteatlas) 保留。

统一设置

精灵图集资源为打包的纹理提供一组纹理设置。无论在图集内包含的精灵的纹理设置是什么,结果图集纹理将仅遵循图集资源中的设置。

运行时访问

精灵图集资源具有可在运行时访问的运行时表示。

变体

用户将能够创建另一个精灵图集资源,并将其声明为项目中现有精灵图集的变体。然后,该变体将复制主精灵图集的图集纹理,并根据乘数调整大小。

The Sprite Packer is disabled by default but you can configure it from the Editor settings (File Menu: Edit -> Project Settings -> Editor). The sprite packing mode can be changed from Disabled to Enabled for Builds where packing is used for builds only and not Play mode or Always Enabled (Atlases will be packed before entering Play mode and for builds).

如何创建精灵图集

精灵图集是 Unity 项目中的一种资源。可通过 Project 视图创建精灵图集,并可在创建后立即使用。要创建精灵图集,请从主菜单选择 Asset > Create > Sprite Atlas

属性

属性 功能
Type 将图集的类型设置为 Master 或 Variant Atlas。
Include in build 始终在构建中包含图集资源。
Allow Rotation 允许精灵旋转以进行打包
Tight Packing 非矩形打包
Read/Write Enabled 如果希望从脚本中读取纹理数据,请将此属性设置为 true。将其设置为 false 可阻止脚本读取纹理数据。
Generate Mip Maps 选中此复选框可禁止生成 Mipmap。Mipmap 是纹理的一系列较小版本,适合纹理在屏幕上非常小时使用。
Filter Mode 选择纹理的过滤方式
特定于平台的覆盖面板 可使用特定于平台的覆盖面板设置默认选项(使用 Default),然后使用面板顶部的按钮针对特定平台覆盖这些选项的设置。
https://docs.unity3d.com/Manual/class-TextureImporterOverride.html
Objects For Packing 要包含在打包的图集内的对象。可将文件夹、纹理或单个精灵添加到列表中。

分配要加入图集的资源

可将文件夹、纹理或精灵分配给精灵图集。可将整个文件夹分配给精灵图集资源,该文件夹中的所有纹理(包括子文件夹)都将被打包。分配单个纹理时,所有已定义的精灵都将包括到图集内。也可以将单个精灵分配给图集,并且不考虑相同纹理内的其他精灵。

1.若要添加需要加入图集的资源,请选择图集资源,并通过向列表中添加新条目或将资源从项目拖放到 Inspector 的列表区域来添加资源。可将文件夹、纹理或精灵添加到图集。

2.为生成的图集设定所需的设置。对设置进行的更改始终会将此图集标记为已修改状态,并会在打包阶段再次打包。

3.可通过按 Inspector 中的“Pack Preview”按钮来预览打包的图集。此操作将触发此图集的打包。打包完成后,纹理将出现在预览部分中。

4.所有修改了设置的图集都将在进入播放模式之前打包(如果选择了 __Always Enabled__)。

缩小的变体 (HD/SD)

用户将能够创建另一个精灵图集资源,并将其声明为项目中现有精灵图集的变体。然后,该变体将复制主精灵图集的图集纹理,并根据乘数调整大小。

创建精灵图集变体

1.将精灵图集的 Type 设置为 Variant。 2.将一个图集分配给 Master Atlas 字段。 3.设置变体的缩放因子。值的范围是 0.1 到 1。

4.要将变体图集绑定为默认图集而不是主图集,只需选中变体图集内的“Include in build”选项,并取消选中主图集内的该选项。

5.选中两者将随机包含一个图集(主图集/变体图集)。您可能希望取消选中两者以进行后期绑定,如下所述。

运行时精灵枚举

1.创建一个以“SpriteAtlas”为变量的自定义组件。

2.将任何现有的精灵图集分配到该字段。

3.进入播放模式或运行播放器。

4.访问该变量,并注意现在可以调用属性“.GetSprites”来获取此图集内包含的精灵数组。

后期绑定

精灵可在运行时以“打包但不引用任何图集”的方式启动,并在图集绑定到该精灵之前将显示为空白。这种行为的好处是,如果图集的来源在启动期间不可用(例如从网上下载的资源包),则允许用户有机会进行后期绑定。

通过回调进行后期绑定

1.只要精灵打包到任何精灵图集内,但精灵图集未绑定为默认图集(例如未选中“Include in build”选项),精灵便会在场景中不可见。

2.用户可以监听回调 SpriteAtlas.atlasRequested。

3.此委托方法将提供一个要绑定的图集标签和一个接受 SpriteAtlas 资源的 System.Action。用户应按任意方式(脚本引用、Resources.load、资源包)加载该资源,并将该资源提供给 System.Action。


  • 2017–05–26 页面已发布但未经编辑审查

  • Unity 2017.1 中的新功能 NewIn20171

精灵遮罩
Tilemap