Version: 6000.3
语言: 中文
虚拟纹理的缓存管理
虚拟纹理错误材料

将纹理标记为“仅虚拟纹理”

此功能处于实验阶段,尚未准备好用于生产环境。该功能和文档将来可能会更改或删除。

在 Unity 编辑器中,您可以标记仅虚拟纹理使用的纹理。这优化了内存使用和场景场景包含游戏的环境和菜单。将每个唯一的场景文件视为一个独特的关卡。在每个场景中,你放置你的环境、障碍物和装饰品,基本上是将你的游戏设计和构建成碎片。更多信息
请参阅术语表
加载时间,并减小构建的大小。要将纹理标记为仅虚拟纹理使用的纹理,请打开其 纹理导入器(Texture Importer) 并启用 仅虚拟纹理(Virtual Texture Only)。

在实践中,当你使用虚拟纹理时,你应该将尽可能多的纹理标记为 仅虚拟纹理(Virtual Texture Only),以最大限度地发挥这些优势。请注意,如果你将纹理标记为 仅虚拟纹理(Virtual Texture Only),则无法在项目中将其与常规纹理采样器一起使用。在编辑器中,你似乎可以将其与常规纹理采样器一起使用,因为会出现低分辨率预览,但如果随后构建播放器,则会出现错误。

运作方式

默认情况下,当您在 Unity 编辑器中加载场景时,编辑器会将所有引用的纹理加载到 CPU 和 GPU 内存中。Unity 编辑器无法将纹理从磁盘流式传输到 GPU 内存,但 SVT 可以从 CPU 内存流式传输纹理。将纹理标记为 仅虚拟纹理(Virtual Texture Only) 时,这意味着在场景加载时,编辑器仅将其加载到CPU内存中,然后从该纹理中提取图块,并按需将其流式传输到GPU内存中。

在具有许多高分辨率纹理的项目中,这可以显着减少 Unity 编辑器中的 GPU 内存使用量和场景加载时间。因此,最好将尽可能多的纹理标记为 仅虚拟纹理(Virtual Texture Only),以确保流送虚拟纹理(SVT)系统仅从CPU流送它们。

如果你没有将纹理标记为 仅虚拟纹理(Virtual Texture Only),然后在播放器中将其与虚拟纹理一起使用,则SVT系统会在CPU和GPU内存中保留纹理的副本。

标准纹理伪影

默认情况下,Unity 会添加着色器在 GPU 上运行的程序。更多信息
请参阅术语表
将图形作为标准纹理工件到构建中。此外,虚拟纹理将所有纹理堆栈纹理导入到平铺流送文件中,Unity 也将该文件包含在构建中。

  • 如果将纹理标记为 Virtual Texture Only,则 Unity 不会将其作为标准纹理工件包含在内,并且仅将其包含在平铺流送文件中。
  • 如果您没有将纹理标记为 Virtual Texture Only,Unity 会在构建中包含两次纹理;一次作为标准纹理伪影,一次在平铺流送文件中。

请注意,如果你将纹理标记为 仅虚拟纹理(Virtual Texture Only),但在播放器中将其用作标准纹理,则玩家构建将失败。

虚拟纹理的缓存管理
虚拟纹理错误材料