Streaming Virtual Texturing 系统 (SVT) 将纹理划分为图块。
在运行时,当 SVT 对纹理进行采样时,它会执行以下操作:
这些运行时操作的成本意味着将纹理组合在一起并同时对它们进行采样会更高效。这个过程称为堆叠纹理。使用相同 UV 坐标同时采样的一组纹理称为纹理堆栈。
SVT 在帧渲染期间发出图块请求,因此将请求的图块加载到 GPU 缓存可能需要几毫秒到几秒的时间,并且在某些情况下它们可能根本不会加载到 GPU 缓存中。如果请求的图块没有加载到缓存中,SVT 有一个自动回退机制:它从更高的 Mipmap 级别采样图块,直到请求的图块位于缓存中。这会导致细节级别降低,直到图块完全加载。
高清渲染管线 (HDRP) 调试视图显示有多少相邻屏幕像素请求相同的图块。
To open the HDRP debug view, navigate to the Unity top menu and select Window > Render Pipeline > Render Pipeline Debug > Rendering. To view the debug data for SVT, set Fullscreen Debug Mode to RequestedVirtualTextureTiles.
对相同纹理图块进行采样的像素具有相同的颜色。色调(绿色、红色等)表示图块所属的 Mipmap 级别。例如,所有黄色图块都属于 Mipmap 1 的纹理。