微軟發表 DirectX 12 Ultimate,它帶來了哪些改變?

作者 | 發布日期 2020 年 03 月 25 日 16:38 | 分類 Microsoft , 軟體、系統 line share follow us in feedly line share
微軟發表 DirectX 12 Ultimate,它帶來了哪些改變?


幾乎每一個玩過電腦遊戲的人,都聽過 DirectX 的大名。做為 Windows 系統自帶的圖形 API(應用程式編程介面),大部分 PC 遊戲都需要它的支援。

目前 DirectX 的最新版本是 DirectX 12,它發表於 6 年前,已經相當長一段時間沒有大更新過了,19 日微軟終於公布了它的升級版──DirectX 12 Ultimate 。從字面意思上來看,它是 DX 12 的終極版,它將會隨著 Windows 10 2004 系統更新一同推送。

DirectX 12 Ultimate 有哪些特性?

從 DX 12 開始,微軟就已經將主機和 PC 之間的圖形介面打通,Windows 10 和 Xbox One 都使用了 DX 12 做為圖形 API 。使用相同 API 帶來的好處也十分明顯,遊戲公司在開發遊戲時,不需要再為 Xbox 和 PC 端的移植而煩惱,所以我們能看到大量 Xbox 遊戲出現在 PC 的應用商店中。

這次微軟發表的 DirectX 12 Ultimate 同樣是跨平台的 API,這也讓下一代 Xbox 理所當然地獲得了 PC 上的某些畫面特性,比如輝達普及的光線追蹤。

DirectX Raytracing Tier 1.1

這次微軟將 2018 年發表的 DXR 1.0 更新到 DXR 1.1 版本,這是一次增量更新,最明顯的變化有:

  • 為現有的光線追蹤管線狀態對象(Pipeline State Object)加入了額外的著色器(Shader)。
  • 支援 GPU 執行時間軸自動判定需要處理的光線數量。
  • 引入新的內聯式光線追蹤。

(Source:wccftech

這些特性為遊戲開發者提供了一套規避複雜光線追蹤場景的方法,讓開發者可以透過調用新函數,獲得物體遮擋查詢、剔除等功能,讓開發者能更快的構建光線追蹤的場景,給遊戲提供更好的光追效果和性能。

在微軟發表 DirectX 12 Ultimate 後,NVIDIA 表示將 RTX 系列處理器將完全支援 DXR 1.1 特效,AMD 也宣布將在 RDNA 2 架構中支持該特性。

VRS(可變速率著色)

除了光追外,之前 NVIDIA 推出的 VRS 技術也被微軟認可,並將其加入 DirectX 12 Ultimate 中。VRS 全稱是可變速率著色技術,它最明顯的作用就是降低顯示畫面中一些不重要區域色彩紋理,進而提升畫面的流暢度。

在這個技術被應用之前,GPU 需要為畫面上的每一個像素點單獨著色。而 VRS 就是對畫面區域進行劃分,為不同的區域選擇不同的著色解析度,細節要求不高的區域就將多個像素點一起著色,大幅降低了 GPU 著色的次數,大大減輕了顯卡的計算壓力。

(Source:NVIDIA

比如上面這張圖,畫面邊緣最不顯眼位置的著色解析度就被降到最低,雖然這部分畫面的品質有所下降,但由於它只是背景,玩家不會有明顯的感知。省下來的 GPU 資源,則用於提升幀率,減少感知更明顯的卡頓現象。

可以說,有了 VRS 技術後,平均幀率不高的中低階顯卡將將會獲得不小的體驗提升。

Mesh Shader

除了為最後為像素著色外,圖形渲染在前期還需要完成物體的 3D 模型計算渲染。這個工作之前需要向 CPU 發送一個 Draw Call(繪製調用)。通常情況下, 它會因為 CPU 的性能瓶頸,限制 GPU 的發揮。

(Source:wccftech

Mesh Shader 的可以解決這個問題,它可以讓開發人員不用考慮單個頂點或者單個圖元,用一組預定的線程更高效的完成渲染流程。

Mesh Shader 可以進一步提幾何圖形的細化程度,例如對硬體進行編程,並用簡單的方式描述樹幹枝杈的位置,最後生成細節更多的樹皮樹葉。

有了 Mesh Shader 後, 遊戲場景中的灌木叢、植被等物體將有詳細的細節,能進一步提高場景的真實性。

Sampler Feedback(取樣器反饋)

這個功能其實和 VRS 類似,都是透過減少某些冗餘訊息,降低 GPU 負載並提高性能。

與影片壓縮採用幀與幀之間的畫面矢量預測不同,遊戲中的渲染大部分都是從「0」開始,也就是不停地重複獲取頂點、視角轉換、投影、照明、剪裁、柵格化的工作,不管前後兩幀畫面有多少相同。

(Source:影片截圖)

事實上,大多數遊戲在的場景變動都十分緩慢,大多數「對象」在畫面中並沒有改變(例如天空、遠景)。取樣器反饋就是透過降低對這些對象著色的速度(比如每 3 幀一次),來降低 GPU 的工作壓力。

這個功能可減少重複對遠景和緩慢變化的陰影著色對性能影響,進一步提升畫面的幀率。

總結:開發者福利,NV 大獲全勝

這次的 DirectX 12 Ultimate 是一次增量更新,加入了之前 NVIDIA 推出的新技術,包括光追和 VRS 。有別於 DX 10 和 DX 11 的技術躍進,DirectX 12 Ultimate 更多是為開發者提供更底層的優化空間。

反映在遊戲上,我們可以會看到:更有經驗和實力的開發者會用 DX 12 Ultimate 的新特性做出非常驚豔的遊戲畫面,同時性能優化也非常出色,但如果是遊戲開發者沒有調用這些工具,它將不會對畫面和畫面效能產生太大提高。

不過 DirectX 12 Ultimate 橫跨主機與 PC,一些首發於主機的遊戲在開放到 PC 平台後或許也能獲得新特性的優化。

最後說一個好消息:NVIDIA 表示 RTX 系列將完全支援 DirectX 12 Ultimate 的所有特性,AMD 即將推出的 Navi 架構顯卡也支援 DirectX 12 Ultimate,AMD 已經發表了第一個運行光追的 DEMO。

未來幾年,光追或將全面普及。

(本文由 愛范兒 授權轉載;首圖來源:NVIDIA

延伸閱讀: