摘要:NVIDIA 最新推出的 Neural Texture Compression (NTC) 技术可将游戏 VRAM 使用量降低高达 85%,同时保持甚至提升图像质量。这项技术代表了纹理压缩领域的重大突破。
核心亮点
- VRAM 减少 85%:在 NVIDIA 演示的 Tuscan Wheels 场景中,VRAM 使用从 6.5GB 降至仅 970MB
- 更高分辨率:相同比特率下可提供 4 倍分辨率(16 倍纹素)
- 质量更优:PSNR 和 ꟻLIP 指标均优于传统 BCn 压缩格式
- 实时解压缩:支持 GPU 端按需随机访问解压缩
技术原理
压缩方式
NTC 的核心思想是将多个 PBR 纹理通道一起压缩。典型的 PBR 材质包含 9-10 个通道:
- 反照率(Albedo):RGB 3 通道
- 法线(Normal):XY 2 通道
- 金属度(Metalness):1 通道
- 粗糙度(Roughness):1 通道
- 环境光遮蔽(AO):1 通道
- 不透明度(Opacity):1 通道
NTC 最多可压缩 16 个纹理通道到一个 NTC 纹理集中,特别适合通道间存在相关性的材质(例如反照率纹理中的细节对应法线纹理中的细节)。
工作流程
原始纹理 → 编码器 → [潜在张量 + 神经网络权重] → GPU 解码 → 重建纹理- 压缩阶段:原始纹理数据被转换为小型神经网络的权重和潜在特征张量
- 存储阶段:压缩后的潜在纹理(latent texture)占用极小空间
- 解压阶段:GPU 上的轻量级神经网络按需重建纹素
解压缩模式
NTC 支持两种运行模式:
| 模式 | 描述 | 适用场景 |
|---|---|---|
| Inference on Load | 游戏/地图加载时解压缩并转码为 BCn 格式 | 低端硬件、传统渲染器 |
| Inference on Sample | 渲染时按需解压缩单个纹素 | 支持 Cooperative Vector 的现代 GPU |
性能对比
以 2K×2K 纹理分辨率(忽略 mipmap 链)为例:
| 压缩方式 | 磁盘大小 | PCI-E 传输 | VRAM 占用 |
|---|---|---|---|
| 原始图像 | 32.00 MB | 32.00 MB | 32.00 MB |
| BCn 压缩 | 12.00 MB | 12.00 MB | 12.00 MB |
| NTC (加载时) | 2.50 MB | 2.50 MB | 12.00 MB |
| NTC (采样时) | 2.50 MB | 2.50 MB | 2.50 MB |
NTC 采样时模式在 VRAM 占用上具有显著优势
硬件支持
兼容性
NTC 具有良好的向后兼容性:
- NVIDIA:GTX 1000 系列及以上(Ada/Blackwell 架构性能最佳)
- AMD:Radeon RX 6000 系列及以上
- Intel:Arc A 系列及以上
性能优化
在 Ada 和 Blackwell 架构 GPU 上,NTC 可利用 Cooperative Vector 扩展(Vulkan 和 DirectX 12),相比传统实现获得 2-4 倍推理吞吐量提升。
对于不支持 Cooperative Vector 的硬件,NTC 提供基于 DP4a 指令或整数数学的回退实现,确保在支持 DirectX 12 Shader Model 6 的任何平台上都能可靠运行。
技术特点
确定性而非生成式
与许多 AI 应用不同,NTC 是确定性的:
- 每次都精确重建相同的纹理
- 不产生幻觉或变化
- 可预测、可验证
可调节质量/恒定比特率
NTC 可视为可调质量/恒定比特率的有损压缩方案:
- 通过指定潜在形状(Latent Shape)控制比特率
- 支持近似恒定质量/可变比特率的自适应压缩
- 典型 PBR 材质束可从 64 bits/texel 压缩至约 5 bits/texel,同时保持 40-50 dB PSNR
开发资源
NVIDIA 已开源 RTXNTC SDK,包含:
- LibNTC:核心压缩/解压缩库
- ntc-cli:命令行压缩工具
- NTC Explorer:交互式实验和查看器
- NTC Renderer:GLTF 模型渲染示例
- Python 模块:自动化脚本支持
GitHub 仓库:NVIDIA-RTX/RTXNTC
行业影响
对游戏的意义
- 降低 VRAM 需求:使高画质游戏能在中端显卡上运行
- 减少加载时间:更小的纹理包意味着更少的磁盘 I/O 和 PCI-E 传输
- 提升画质上限:节省的 VRAM 可用于更高分辨率纹理或其他效果
竞争格局
神经纹理压缩已成为行业趋势:
- NVIDIA NTC:85%+ VRAM 减少
- Intel TSNC:最高 17 倍压缩率,支持无 AI 核心的 GPU
- AMD:也在研发类似技术
总结
NVIDIA Neural Texture Compression 代表了纹理压缩技术的重大飞跃。通过将神经网络引入压缩流程,NTC 在保持图像质量的同时显著降低了内存占用。随着硬件支持的普及和开发工具的成熟,这项技术有望成为下一代游戏和图形应用的标准配置。
对于开发者而言,现在就可以通过 RTXNTC SDK 开始实验和集成。对于玩家而言,这意味着未来可以在更有限的硬件上享受更高画质的游戏体验。
参考资料: