DirectX 11 與 DirectX 12:哪個更適合遊戲?
已發表: 2023-04-01在 PC 上玩遊戲時選擇使用的 DirectX 版本可能會對性能產生重大影響。 但僅僅因為 DirectX 12 更新,是否意味著它始終是最佳選擇? 讓我們看看 DirectX 11 和 12 之間的差異,並探索哪個版本更適合遊戲。
什麼是 DirectX?
DirectX 11 與 12:有何區別?
DX 11 或 DX 12 更適合遊戲嗎?
我應該使用哪個 DirectX?
經常問的問題
什麼是 DirectX?
DirectX 是 Microsoft 創建的 API(應用程序編程接口)的集合,並作為 Windows 操作系統的一部分包含在內。 API 套件包括 Direct3D、DirectPlay、DirectSound、DirectDraw 等。 它旨在幫助遊戲開發人員確保他們的軟件能夠與盡可能多的不同硬件配置一起工作。
遊戲開發人員無需為多個圖形、視頻和聲音硬件組件提供單獨的驅動程序,而是可以專注於 DirectX 兼容性的編程,並且知道他們的軟件可以正常工作。 例如,無論最終用戶是否擁有 Radeon RX 7900 而不是 Geforce RTX 3060。
這種軟件和硬件之間接口的標準化是 PC 遊戲在過去 20 多年裡蓬勃發展的關鍵。 儘管可以使用其他 API 套件,包括 Vulkan 和 OpenGL,但過去二十年幾乎所有成功的遊戲都使用或支持 DirectX。
DirectX 11 與 12:有何區別?
DX 11 和 DX 12 之間主要的,也許是最重要的區別是它們與您的硬件交互的級別。
DirectX 12 使用低級 API,它們在接近硬件的軟件層中運行。 這意味著它可以更直接地控制 GPU,並且可以更高效地工作。 DirectX 11 是一個高級 API,這意味著雖然它仍然可以訪問 GPU 和其他硬件,但它被移除了更多,並且只對優化進行了更廣泛的控制。
對硬件優化的低級別訪問使 DirectX 12 的使用更加困難和耗時。 這可能就是為什麼儘管 DX 12 於 2015 年發布,但仍在為更簡單且通常更穩定的 DirectX 11 開發遊戲。
查看 DX 11 與 12 時要考慮的第二個區別是 CPU 核心利用率。 長期以來,遊戲玩家幾乎沒有理由選擇四核以上的 CPU,因為遊戲開發者很難開發出能夠有效利用多核的遊戲。 借助 DirectX 12,Microsoft 通過在 API 中構建對多核處理的支持來解決該問題。 使用 DX 12 玩遊戲時,更多內核意味著更好的性能。
訪問多個內核的能力與 DX 12 中的另一個新功能相結合:並行計算。 在DirectX 11中,操作以線性隊列進行,紋理壓縮、物理模擬、陰影生成、CPU數據上傳等功能依次發生。 DirectX 12 允許這些類型的操作在多個線程中並行執行,從而顯著提高效率。
DirectX 12 還引入了異步計算。 這允許在不等待前一個完成的情況下執行操作。 例如,生成遊戲內陰影的過程可以在紋理壓縮操作完成之前執行。
通過使用並行和異步計算實現的微小優化(可能每秒數百次)加起來構成了 DX 11 和 DX 12 之間差異的核心。簡而言之,DirectX 12 在遊戲軟件之間的通信方面效率更高和 PC 硬件。
DX 11 或 DX 12 更適合遊戲嗎?
總的來說,使用 DirectX 12 時你會看到更好的遊戲性能。它在軟件和兼容硬件之間的優化和效率方面比 DirectX 11 有了很大的進步,任何被編程為充分利用的遊戲都可以運行比使用舊 API 時更好。
您可能不會在每款遊戲中看到相同水平的性能提升,主要是因為並非每款遊戲都需要或可以使用 DX 12 提供的那種低級優化。 NVIDIA 建議將 DirectX 12 與 RTX 3090 一起使用可以將刺客信條瓦爾哈拉的幀速率提高 24%,將賽博朋克 2077的幀速率提高 20% 超過 DX 11。然而孤島驚魂 6和全境封鎖 2僅提高了 5%。
DirectX 12 還支持更廣泛的高級 GPU 功能,例如光線追踪和 VRS(可變速率著色)。如果遊戲和您的顯卡可以使用這些效果,選擇 DX 12 無疑會給您更好的視覺體驗。
我應該使用哪個 DirectX?
並非所有遊戲都讓您在使用 DirectX 11 和 12 之間進行選擇。事實上,提供選擇的遊戲數量仍然很少。 甚至與 DirectX 12 兼容的遊戲在首次安裝時通常也會默認為 DirectX 11。 DirectX 11 甚至可能是舊 PC 硬件上更好的選擇,純粹是為了避免兼容性問題。
但大多數 PC 遊戲玩家會在可用時切換到 DirectX 12,從而看到性能提升,尤其是幀速率。 如果可以在遊戲內設置中進行選擇,則值得嘗試兩個版本以查看最佳效果。
經常問的問題
我有什麼 DirectX?
如果您使用的是 Windows 10 或 11,則您的計算機上應該裝有 DirectX 12。 它包含在兩個操作系統中。 您可以通過打開“運行”對話框並鍵入“dxdiag”來打開 DirectX 診斷工具來進行檢查。
我需要安裝 DirectX 12 嗎?
不,您通常不需要手動安裝 DirectX 12,因為它隨 Windows 一起提供。 如果遊戲需要特定版本的 DirectX 12 才能運行,則在安裝遊戲時會提示您安裝它。 您還可以在新版本可用時更新 DirectX。
DirectX 12 會提高幀速率嗎?
只要遊戲開發人員正確實施了 DirectX 12,使用它應該會產生更高的幀率。 您不太可能看到 FPS 神奇地翻倍,但比 DX 11 增加 20-25% 的情況並不少見。
什麼是 DirectX 12 Ultimate?
DirectX 12 Ultimate 是 DirectX 12 的最新版本,於 2020 年發布。它旨在成為跨 Windows 和 Xbox 遊戲機的統一 API 庫,並引入了多項新功能,包括 DirectX 光線追踪和網格著色。 並非所有顯卡都支持 DirectX 12 Ultimate,因此可用性取決於您的硬件。
相關: Windows 11、Windows 10 和 Xbox 上的 DirectStorage 是什麼?