05.13 2016 關於 DirectX 你需要知道的一些事

2016 關於 DirectX 你需要知道的一些事

如果你跟我一樣是一個 Windows 骨灰級用戶和遊戲玩家,應該對過去 15 年以來,在 Windows 中安裝好遊戲時就會提示是否升級到 DirectX 最新版本記憶猶新。你有沒想過 Windows 為什麼要提示進行 DirectX 升級呢?下面我們就來逐步揭曉答案。

什麼是 DirectX

計算機其實是通過軟件在與硬件進行交互,對於普通用戶來說,你可能不太關心軟件對硬件的操作和管理過程。軟件的所有操作層面下,開發人員需要花費大量時間進行編程,以期讓硬件資源的高效利用變成可能。

對於像 Xbox One 或 PlayStation 4 這樣的遊戲機來說,通常採用相同的處理器、顯卡和內存等硬件,所以其操作系統都是相同的。例如 Xbox One 的遊戲開發商已經明確知道將來會運行的硬件平臺,所以可以有針對性的為硬件開發遊戲,以利用好每個硬件特性和資源,提供最佳性能。

2016 關於 DirectX 你需要知道的一些事

然而,對於普通 PC 遊戲開發而言,事情就不那麼簡單了。不同 PC 生產廠商和用戶自行組裝的兼容機會有不同的 CPU、顯卡、主板和聲卡等硬件,這樣硬件平臺就會有無數種不同的排列組合。那麼,開發人員要如何確保能得到最好的性能呢?

這就是 DirectX 的用武之地了!DirectX 是一種應用程序編程接口(API),微軟在 Windows 系統引入它之後,就可以讓軟件開發商(例如遊戲廠商)更容易地與不同硬件組件進行交互。

2016 關於 DirectX 你需要知道的一些事

DirectX 大致分為如下三個部分:

  • Direct3D:用於顯卡渲染 3D 對象

  • DirectDraw:用於顯卡渲染 2D 對象

  • DirectSound:用於聲卡更好地處理音頻

簡單點來說,DirectX 就是讓遊戲廠商在 Windows 中與不同硬件打交道的一個傳話員和橋樑,不必再單獨為不同硬件編寫代碼。

DirectX 與 OpenGL

與微軟的 DirectX 類似,還有另一套被稱為 OpenGL 的行業標準 API。其實無論 DirectX 還是 OpenGL,都是在做相類似的基本工作:讓開發人員更容易與不同硬件進行交互。

雖然工作方式類似,但兩項技術在實現上還是有一些根本區別。DirectX 讓開發人員能夠更多的控制硬件,讓他們自行選擇如何使用系統中的各種資源。而 OpenGL 的開發人員則必需遵循特定參數並相應地進行資源分配。

至於 DirectX 與 OpenGL 孰優孰劣,這麼多年來一直是個爭論不休的話題。對於普通消費用戶來說其實不必關心這麼多,只需要知道 DirectX 是為 Windows PC 提供,而 OpenGL 大多針對 Linux 遊戲進行優化,例如 SteamOS。

DirectX 12 有什麼特別之處

Windows 10 是微軟最新版本的操作系統,我們在之前的 Windwos 10隱藏特性Top 10 中就曾介紹過最新的 DirectX 12 也是其獨有的最新版本。就目前的各種性能測試數據來看,Windows 10 中 DirectX 12 的性能遠優於 Windows 8 支持的 DirectX 11,這應該也是微軟勸用戶升級的一種策略吧。

DirectX 12 的最大優點之一就在於多顯示核心支持,現代 CPU 大多都是處理器與顯示核心集成的統一芯片,既然 CPU 已經有了圖形處理單元,為什麼要浪費掉呢?DirectX 12 可以智能平衡計算機主顯卡與 CPU 內置圖形處理單元的負載,讓顯卡處理較大負荷而核顯處理輕負載狀態,以達到更好的圖形和遊戲渲染處理速度。

2016 關於 DirectX 你需要知道的一些事

需要注意的是目前 DirectX 12 還沒被各大開發商廣泛應用,而且不支持一些老舊硬件:

  • Nvidia 顯卡需要 GTX400 及較新的基於 Fermi 架構的產品

  • AMD 顯卡需要 HD7000、R5240 或較新的 基於GCN 架構的產品

  • 對於 Intel 板載顯卡需要 Intel Haswell 或更高 CPU

  • 對於 AMD PC 板載顯卡需要 AMD Kaveri、Mullins、Beema 或更高 CPU

如何查看和更新DirectX

要查看當前 Windows 中的 DirectX 版本步驟非常簡單:

1使用 Windows + R 快捷鍵打開「運行」

2執行 dxdiag 命令並回車

3在彈出的「DirectX 診斷工具」中即可看到當前 Windows 所使用的 DirectX 版本號。

2016 關於 DirectX 你需要知道的一些事

Windows 10 用戶會是 DirectX 12 或 DirectX 11,Windows 7 和 Windows 8 應該為 DirectX 11,如果還有人在用 Windows XP,可能會看到 DirectX 9。如果你認為版本過老,可以從微軟官網下載安裝 DirectX 或通過 Windows Update 自動更新。

2016 關於 DirectX 你需要知道的一些事

此外還請大家到「DirectX 診斷工具」的「顯示」選項卡查看 DirectDraw 加速、Direct3D 加速和 AGP 紋理加速這 3 項目功能是否已啟用。如果沒啟用的話說明當前硬件不支持,只能通過升級硬件來解決了。


分享到:


相關文章: