解决不同的 Sprite Atlas 场景
Unity 解决精灵与精灵二维图形对象。如果您习惯于使用 3D,则精灵本质上只是标准纹理,但有一些特殊的技术可以组合和管理精灵纹理,以便在开发过程中提高效率和便利性。 更多信息
参见 术语表图集之间交互的方式取决于各种条件。以下示例详细介绍了最常见的场景
场景 1:基本的 Sprite Atlas 用法
-
精灵图集一个实用程序,将多个精灵纹理紧密地打包到一个称为图集的单个纹理中。 更多信息
参见 术语表 A 包含 精灵 1。
-
精灵图集 A 启用了 包含在构建中。
- 结果:项目的发布版本包含 精灵图集 A。精灵 1 使用来自 精灵图集 A 的纹理进行渲染。
场景 2:禁用“包含在构建中”
-
精灵图集 A 包含 精灵 1。
-
精灵图集 A 禁用了 包含在构建中。
- 结果:项目的发布版本不包含 精灵图集 A,也不包含 精灵 1 的纹理。精灵 1 在运行时的构建中显示为不可见,因为其引用的纹理不可用且未加载。
场景 3:一个精灵在两个精灵图集中
-
精灵图集 A 和 精灵图集 B 都在其 打包对象 列表中包含 精灵 1。
- 精灵图集 A 和 精灵图集 B 都启用了 包含在构建中。
- 在本示例中,两个精灵图集 都具有不同的纹理输出设置。
- 结果:项目的发布版本包含这两个精灵图集。Unity 会随机选择使用哪个纹理来渲染 精灵 1,这属于内部过程,无法控制。
在此场景中,若要确保精灵使用您想要的精灵图集中的纹理进行渲染,请按照以下步骤操作
- 禁用两个精灵图集的 “包含在构建中”。
- 在运行时初始化精灵时,使用 SpriteAtlas.GetSprite 直接从其中一个图集中请求精灵。这可以确保 Unity 始终从正确的精灵图集中绘制精灵纹理。