Version: Unity 6.0 (6000.0)
语言 : 中文
Streaming Virtual Texturing
Streaming Virtual Texturing 的工作原理

Streaming Virtual Texturing 要求和兼容性

此功能为实验性功能,尚未准备好用于生产环境。未来可能会对功能和文档进行更改或移除。

渲染管线支持

高清渲染管线 (HDRP) 中,可以在使用 Shader Graph 创建的着色器中使用串流虚拟纹理(Streaming Virtual Texturing,SVT)。

系统要求

GPU 要求

  • GPU 计算
  • Texture2DArrays
  • AsyncReadBack

支持的平台

  • Windows
  • Mac
  • Linux

注意:使用 ARM 架构的平台不支持串流虚拟纹理。

一些额外的游戏主机平台支持此功能。请参阅目标平台的文档以确定其是否支持串流虚拟纹理。

支持的图形 API

  • DirectX 11
  • DirectX 12
  • Metal
  • Vulkan

纹理兼容性

  • SVT 建立在 Texture2D 之上。SVT 纹理通过相同的导入器,这将限制最大纹理大小。SVT 不支持大于 16K x 16K 的纹理。也不支持 UDIM 纹理或将平铺图像文件合并为一个大纹理。

  • SVT 不支持所有纹理图形格式。支持的格式如下:

    • GraphicsFormat::kFormatRGBA_DXT1_SRGB
    • GraphicsFormat::kFormatRGBA_DXT1_UNorm
    • GraphicsFormat::kFormatRGBA_DXT3_SRGB
    • GraphicsFormat::kFormatRGBA_DXT3_UNorm
    • GraphicsFormat::kFormatR_BC4_UNorm
    • GraphicsFormat::kFormatRG_BC5_UNorm
    • GraphicsFormat::kFormatRGB_BC6H_SFloat
    • GraphicsFormat::kFormatRGB_BC6H_UFloat
    • GraphicsFormat::kFormatRGBA_BC7_SRGB
    • GraphicsFormat::kFormatRGBA_BC7_UNorm
    • GraphicsFormat::kFormatR8_SRGB
    • GraphicsFormat::kFormatR8_UNorm
    • GraphicsFormat::kFormatR8G8_SRGB
    • GraphicsFormat::kFormatR8G8_UNorm
    • GraphicsFormat::kFormatR8G8B8_SRGB
    • GraphicsFormat::kFormatR8G8B8_UNorm
    • GraphicsFormat::kFormatR8G8B8A8_SRGB
    • GraphicsFormat::kFormatR8G8B8A8_UNorm
    • GraphicsFormat::kFormatR16_SFloat
    • GraphicsFormat::kFormatR16_UNorm
    • GraphicsFormat::kFormatR16G16_SFloat
    • GraphicsFormat::kFormatR16G16_UNorm
    • GraphicsFormat::kFormatR16G16B16A16_SFloat
    • GraphicsFormat::kFormatR16G16B16A16_UNorm
    • GraphicsFormat::kFormatR32_SFloat
    • GraphicsFormat::kFormatR32G32_SFloat
    • GraphicsFormat::kFormatR32G32B32A32_SFloat
    • GraphicsFormat::kFormatA2B10G10R10_UNormPack32
  • SVT 不支持:

    • 镜像包裹模式。
    • 每轴钳制(例如,水平重复同时垂直钳制)。
    • 分辨率不是 2 的幂的纹理。
  • SVT 中的纹理没有小于瓦片大小(128 x 128 像素)的 Mipmap。SVT 将采样钳制到此 Mipmap 级别,因此您可以在远处看到某些内容的锯齿。

  • SVT 仅在播放器中支持三线性过滤,在编辑器中不支持。

  • SVT 仅支持在播放器中从磁盘的串流,而在编辑器中不支持。

  • 最大各向异性过滤级别为 8。这是因为每个瓦片都有一个 8 像素的边界。

  • 不能在播放器中动态设置属于堆栈的纹理。在播放器中,无法调用 Material.SetTextureRenderer.SetPropertyBlock 来修改纹理堆栈。

Unity 功能兼容性

  • SVT 不支持:

    • AssetBundles,包括 Addressables 和 Live Link。
    • 可编程构建管线 (SBP) 和子场景。
    • Crunch 压缩。
  • 堆叠层的纵横比必须匹配。

Streaming Virtual Texturing
Streaming Virtual Texturing 的工作原理