为什么在Atlas中添加纹理不会降低内存消耗?

时间:2018-09-14 05:17:03

标签: unity3d unity3d-gui

我在UI中使用了NPOT精灵,Unity像这样预览它:

texture not added to atlas

当我向其中添加包装标签时,Unity会显示以下内容:

texture added to atlas

请注意,Unity一直说占用8.2MB。我以为会更少一些,但是在分析我的应用程序时,我发现它确实占用了8MB。

纹理是NPOT,所以我期望添加到Sprite时由于PVRTC压缩而使纹理降低。它是1399x2048,因此应该适合于2048x2048 PVRTC地图集,这大约需要3MB。为什么这没有发生?

我正在使用Unity 2018.1.7f1,并且已禁用旧版Sprite Packer。

1 个答案:

答案 0 :(得分:0)

我发现了问题所在。部分原因是我对Sprite Packer的工作方式有误解,部分是Unity的错:

正如我在问题中所说,旧版 Sprite Packer已禁用。打包标签可与旧版Sprite Packer配合使用。我的项目设置为使用新的Sprite Packer,它应该使用 .spriteatlas 文件创建地图集(更多信息here),因此未创建任何地图集。

部分原因是Unity的错误,因为它在“预览”窗口中错误地显示了“ Compressed PVRTC”,使我认为它已打包。