Steam 客服
每款遊戲都需要安裝 DirectX
為什麼每款遊戲都要安裝 DirectX?

為什麼每款遊戲都要安裝 DirectX?

Microsoft 有一個名為 D3DX 的 D3D 協助程式程式庫, 您的 Windows\System32 資料夾中即有其二進位檔,如 d3dx9_43.dll。 光是 D3D9 就有 40 種以上不同版本的 D3DX 程式庫,D3D10 及 11 則更多。 每款使用 D3DX 協助程式程式庫的遊戲都與某一特定版本連結。 因此,每款遊戲都必須執行其編譯時所使用、正確版本的 D3D 安裝程式,以確保相關的二進位檔存在。

即使安裝了更新版本的二進位檔,也無法使用該版本。而即使執行較新版本的安裝程式、安裝了最新的 DirectX,也無法保證所有先前的版本有一併安裝。 此外,如果安裝了適用於 x86 的版本,也無法保證有安裝適用於 x64 的相同版本,因此 64 位元和 32 位元遊戲可能需要執行完全相同,但適用於不同平台的安裝程式版本。

Microsoft 的授權條款禁止任何人直接分發這些檔案,只能透過執行安裝程式的方法分發,也是 Microsoft 唯一支援檢查安裝版本是否正確的方式。 自行嘗試檢查正確版本相當複雜,因為有為數眾多的檔案必須同時存在,而 DLL 搜尋路徑等個別系統配置又使情況更加複雜。 另外,每個新版的 D3DX 執行階段的相依性與所需檢查都可能有所改變。 安裝程式中包含所有能正確進行檢查並修復受損安裝檔案的程式碼,執行安裝程式可以保證遊戲執行時有正確的二進位檔,並能預防許多因缺失正確版本的 Windows 安裝檔案,或過去由於某種原因受到損毀,而導致遊戲無法啟動,並出現不明錯誤的問題。


為什麼 Valve 的 Source 引擎遊戲無需執行 DirectX 安裝程式?

不使用 D3DX 協助程式的遊戲(如 Source 引擎遊戲)僅需事先安裝主流的 D3D9/10/11 版本即可運作,因此首次啟動時不需執行安裝程式。 然而,使用 D3DX 的遊戲則必須執行安裝程式,因為 Microsoft 只允許以此方法分發檔案以及檢查檔案版本。


需要與 Steam 有關的協助嗎?
請使用 Steam 協助精靈縮小問題範圍並取得所需的協助。
社群協助
於 Steam 討論區中發佈您的問題,或搜尋問題的答案。