NVIDIA-RTX/RTXNTC

NVIDIA Neural Texture Compression SDK

解决的问题

NTC 解决了 PBR(基于物理的渲染)材质纹理带来的高内存消耗和带宽使用问题。与传统块压缩方式分别压缩每个纹理通道(如漫反射、法线、粗糙度)不同,NTC 将多个相关纹理通道一起压缩为单一神经纹理集,显著减少 VRAM 占用和 PCI-E 通信流量。

工作原理

在压缩过程中,纹理数据被转换为小型神经网络(多层感知机或 MLP 解码器)的权重和一个潜在变量张量。为了重建纹理,系统对这些潜在变量进行采样,并将其通过解码器。

根据硬件和性能需求,支持三种解压模式:

  • 加载时推理:在游戏或地图加载时,纹理被解压并转换为标准的块压缩格式(BCn)。
  • 采样时推理:纹理在实时渲染中直接在着色器内(像素着色器或光线追踪命中着色器)解压。
  • 反馈时推理:使用采样器反馈(Sampler Feedback)仅解压当前视图所需的特定纹理瓦片。

为加速此过程,NTC 利用 Ada 和 Blackwell 系列 GPU 上的「协作向量」扩展功能(Vulkan VK_NV_cooperative_vector 和 DX12 LinAlg)。

适用人群

本 SDK 专为希望在 3D 渲染管线中减少高质量材质内存占用,同时保持与标准块压缩相当视觉质量的图形工程师和游戏开发者设计。

主要亮点

  • 多通道压缩:可将最多 16 个纹理通道压缩为一组。
  • 可调质量:提供恒定比特率方案,用户可选择「潜在形状(Latent Shapes)」以平衡内存使用与图像质量。
  • 硬件加速:利用协作向量扩展,在现代 NVIDIA GPU 上实现 2-4 倍的推理速度提升。
  • 灵活集成:包含 C++ 库(LibNTC)、命令行工具(ntc-cli)和用于自动化的 Python 模块。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目