Version: 2019.4
后期绑定
Sprite Packer 模式

解析不同的精灵图集情形

Unity 解析精灵和精灵图集之间交互情况的方式取决于各种条件。以下示例详细展现了最常见的情形:

情形 1:基本精灵图集用法

  1. 精灵图集 A 包含__精灵 1__。
  2. 精灵图集 A 启用 Include in Build
  3. 结果:项目发布的构建中包含__精灵图集 A精灵 1__ 使用__精灵图集 A__ 中的纹理进行渲染。

情形 2:禁用“Include in Build”

  1. 精灵图集 A 包含__精灵 1__。
  2. 精灵图集 A 禁用 Include in Build
  3. 结果:项目发布的构建中不包含__精灵图集 A__,也不包含__精灵 1__ 的纹理。精灵 1 在运行时在构建中不可见,因为其引用的纹理不可用且未加载。

情形 3:一个精灵位于两个精灵图集中

  1. 精灵图集 A 和__精灵图集 B__ 两者均在自己的 Objects for Packing 列表中包含__精灵 1__。
  2. 精灵图集 A 和__精灵图集 B__ 两者均启用 Include in Build
  3. 在此示例中,两个__纹理图集__具有不同的纹理输出设置。
  4. 结果:项目发布的构建中包含两个精灵图集。Unity 会在一个不受控制的内部过程中随机选择使用哪个纹理来渲染__精灵 1__。

在此情形中,要确保精灵使用所需精灵图集中的纹理进行渲染,请按照以下步骤操作:

  1. 为两个精灵图集都禁用 Include in Build
  2. 在运行时初始化精灵时,直接使用 SpriteAtlas.GetSprite 从其中一个图集请求精灵。这样可确保 Unity 始终从正确的精灵图集绘制精灵纹理。
后期绑定
Sprite Packer 模式