Nvidia 本周推出了其新的纹理压缩方法,该方法提供比传统块截断编码(BTC、BC)方法高四倍的分辨率,同时具有相似的存储要求。所提出方法的核心概念是共同压缩多个材质纹理及其 mipmap 链,然后使用针对其解压缩的特定模式训练的神经网络对它们进行解压缩。理论上,该方法甚至可以影响未来的 GPU 架构。然而,目前该方法有局限性。
视频游戏实时渲染的最新进展已经接近电影的视觉质量,这是由于使用了诸如用于材料真实感建模的基于物理的着色、光线追踪、路径追踪和用于精确全局照明的去噪等技术。与此同时,纹理技术并没有真正以类似的速度发展,主要是因为纹理压缩方法基本上与 1990 年代后期保持相同,这就是为什么在某些情况下许多物体在近处看起来很模糊。
这是因为 GPU 仍然依赖基于块的纹理压缩方法。这些技术具有非常高效的硬件实现(因为支持它们的固定功能硬件已经发展了多年)、随机访问、数据局部性和近乎无损的质量。但是,它们专为 4 倍到 8 倍之间的中等压缩率而设计,并且最多只能有 4 个通道。现代实时渲染器通常需要更多的材料属性,从而需要多个纹理。
这就是 Nvidia 对 材质纹理进行随机访问神经压缩的地方(在新标签页中打开) (NTC) 开始发挥作用。Nvidia 的技术实现了两个额外的细节级别(纹素多 16 倍,因此分辨率高四倍),同时保持与传统纹理压缩方法相似的存储要求。这意味着分辨率高达 8192 x 8192 (8K) 的按材质优化的压缩纹理现在是可行的。
为此,NTC 在空间上、跨 mipmap 级别和跨不同的材料通道利用冗余。这确保了当观众靠近物体时纹理细节得以保留,这是现代方法无法实现的。