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 模組。
相關
- 專案
- 專案
- 專案
- 專案
- 專案