Version: 2021.1
Streaming Virtual Texturing
How Streaming Virtual Texturing works

Streaming Virtual Texturing requirements and compatibility

レンダリングパイプラインのサポート

In the High Definition Render Pipeline (HDRP) you can use Streaming Virtual Texturing (SVT) in Shaders you create with Shader Graph.

システム要件

GPU requirements

  • GPU compute
  • Texture2DArrays
  • AsyncReadBack

Supported platforms

  • Windows
  • Mac
  • Linux
  • Playstation 4
  • Xbox One

Supported graphics APIs

  • DirectX 11
  • DirectX 12
  • Metal
  • Vulkan

Texture compatibility

  • SVT is built on top of Texture2D. SVT Textures go through the same importer, which limits the maximum texture size. SVT doesn’t support textures larger than 16K x 16K. It also does not support UDIM Textures, or merging tiled image files into one large texture.

  • SVT doesn’t support all Texture graphics formats. The supported formats are:

    • 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 does not support the following:

    • Mirror wrap mode.
    • Per-axis clamping (for example, repeating horizontally while clamping vertically).
    • Textures with resolutions that aren’t a power of two.
  • Textures in SVT don’t have mipmaps smaller than the tile size (128 x 128 pixels). SVT clamps the sampling to this mip, so you can see aliasing for certain content at a distance.

  • SVT only supports trilinear filtering in the Player, and not in the Editor.

  • SVT only supports streaming from disk in the Player, and not in the Editor.

  • The maximum anisotropic filtering level is 8. This is because each tile has an 8-pixel border.

  • You cannot set Textures that are part of a stack dynamically in the Player. In the Player, you cannot call Material.SetTexture or Renderer.SetPropertyBlock to modify the Texture Stack.

Unity feature compatibility

  • SVT does not support the following:

    • AssetBundles, including Addressables and Live Link.
    • Scriptable Build Pipeline (SBP) and Subscenes.
    • Crunch compression.
  • The aspect ratios of stack layers must match.

Streaming Virtual Texturing
How Streaming Virtual Texturing works