微軟本週早些時候宣布了其最新的DirectX 12 Ultimate API,該API旨在為開發人員在PC和控制台上提供下一代顯示的統一平台。該公告的主要功能之一是在DX12框架中增加了Mesh Shaders,Microsoft / Xbox ATG(高級技術組)的首席工程師Martin Fuller展示了這項新技術將如何幫助開發人員提供更高的吞吐量在下一代遊戲中。
Martin 解釋說目前只有兩個平台支援DirectX 12 Ultimate Mesh Shaders,包括NVIDIA Turing GPU系列和帶有AMD RDNA2的Xbox SeriesX。因此只需回顧一下Mesh Shaders是什麼以及它們做什麼。NVIDIA 於2018年發布了擁有其Turing GPU架構的 Mesh Shaders ,這是在渲染包含大量非常複雜對象的場景時顯著提高性能和影像品質的一種方式。
以一個非常複雜且三角形的重Mesh為例,Mesh Shaders本質上要做的就是將其分割為較小的Mesh。每個小Mesh都可以理想地優化其中的頂點重用。使用新的硬體階段和這種分段方案,開發人員可以並行渲染更多幾何圖形,同時獲取更少的整體數據。
相同的Mesh Shaders還將幾何顯示管線帶入了通用GPU計算的全部功能,從而使開發人員能夠構建比以前更多的動態世界,而不會影響性能。它允許使用高級剔除技術,LOD(詳細程度)和場景中無限多的過程拓撲生成。
Martin展示的DirectX 12 Mesh Shader展示包括在Windows 10上以1440p解析度執行的NVIDIA GeForce RTX 2080 Ti,而Xbox Series X devkit以4K解析度執行。該展示包括五個使用各種技術的房間。正常通過會在Xbox系列X上以大約100微秒的速度渲染4K場景,而通過Mesh球體剔除(這是一種更高級的剔除技術)可以將其減少到僅55微秒。RTX 2080 Ti也是如此,它採用先進的Mesh物體剔除技術顯示了顯著的渲染時間下降。
使用較舊的Vertex shaders和Mesh shaders會導致性能下降,不同之處在於兩種情況下的渲染時間都減少到兩種平台的近一半。還值得注意的是RTX 2080 Ti使用1440p的常見直通方法在大約40微秒內渲染場景,而Xbox Series X在4K下大約100微秒內渲染場景。但是Xbox Series X甚至在(標準直通)NVIDIA GeForce RTX 2080 Ti上提供的渲染時間甚至在4K時也要快得多,後者展示了Direct X 12 Ultimate API中新的Mesh Shaders嵌入Turing的優勢。和RDNA 2 GPU。
消息來源
|