DXVK (也稱為DirectX到Vulkan) 是Steam的Steam Play功能中包含的工具之一。
Es 一個出色的工具,可以轉換Microsoft DirectX 11和DirectX 10圖形調用 Vulkan,這是與Linux兼容的開源圖形API。 要使用DXVK,除了Wine和Vulkan之外,您顯然還需要兼容Vulkan的GPU。
儘管DXVK仍主要在Steam Play上使用,但Linux用戶並不是唯一可以利用這項出色技術的地方。
它還為Linux和Wine提供了基於Vulkan的D3D11實現, 關於在Wine上運行Direct3D 11遊戲時的性能和優化,因為它們還提供了對Direct3D9的支持。
請勿將D3D9 for DXVK與分配給Vulkan的VK9 D3D9支持計劃混淆,因為這是一個單獨的計劃,目前仍在開發中。
D3D9提出了DXVK支持,以將API調用從D3D9轉換為D3D11,然後將使用DXVK中內置的D3V11到Vulkan轉換。
基本上與將D3D10轉換為D3D11的DXUP的想法幾乎相同,因此可以通過DXVK將其轉換為Vulkan。
關於DXVK的新版本1.0
最近,DXVK已達到1.0版,其中包括對多個遊戲的性能改進和新的配置腳本。
此最新版本添加了一個選項,以顯示HUD DXVK中支持的功能(功能級別)。
此外,此版本使用了兩個新的Vulkan擴展(VK_EXT_memory_prioritye VK_EXT_memory_budget)(如果有)。
這些擴展 當內存不足時,它們可以改善應用程序的行為,並更準確地向應用程序發送可用VRAM信號,從而改善CPU開銷管理。
DXVK 1.0還具有遊戲特定的增強功能,包括:
- 生化危機2 在某些情況下,啟用d3d11.relaxedBarriers選項可將性能提高多達10%。 啟用此選項可能會導致其他遊戲出現問題,因此啟用它時請務必小心。
- 監工: 借助VK_EXT_depth_clip_enable擴展,解決了與陰影有關的問題。
- 孤島驚魂3/4 /原始/血龍: 修復煩人的文物。
- 最終幻想XIV
- 風暴英雄
- 怪物獵人世界
如何在Linux中添加DXVK支持?
如開頭所述,重要的是我們的GPU必須與Vulkan API兼容。 因此,如果您不知道,請訪問您的GPU製造商的網站以驗證兼容性。
重要的是要提到DXVK需要Wine的最新穩定版本 (也稱為“葡萄酒分期”)來運行。 因此,如果您尚未安裝此軟件,則可以訪問 以下鏈接 我們向您展示如何做到這一點。
現在我們只需要下載DXVK的最新穩定軟件包,我們發現了這個 在下面的鏈接中。 可以在wget命令的幫助下下載該軟件包。 在終端中,我們將鍵入以下命令:
wget https://github.com/doitsujin/dxvk/releases/download/v1.0/dxvk-1.0.tar.gz
現在完成下載後,我們將解壓縮剛剛獲得的軟件包,這可以在您的桌面環境或終端本身中通過執行以下命令來完成:
tar -xzvf dxvk-1.0.tar.gz
然後,我們使用以下命令訪問該文件夾:
光盤dxvk-1.0
然後我們運行sh命令來運行安裝腳本:
sudo sh setup-dxvk.sh install
由於有了新的Bash腳本,因此可以使用Wine DXGI代替DXVK提供的實現。
為此,您必須給出以下命令:
setup-dxvk.sh install --without-dxgi
在Wine前綴中安裝DXVK時。 優點是Wine vkd3d可用於D3D12遊戲,而DXVK可用於D3D11遊戲。
同樣,新腳本允許您將dll安裝為符號鏈接,從而更容易更新DXVK以獲取更多Wine前綴(您可以通過–symlink命令執行此操作)。
一種簡單的方法是將dll複製到Wine目錄中。 如您所知,像Crossover這樣的PlayOnLinux也使用了Wine。 因此,對於每個應用程序或遊戲,他們通常使用“ drive_c / windows”創建一個瓶子。在這裡,他們應該對系統進行更為徹底的檢查。
如你看到的 DXVK文件夾包含另外兩個,分別是32位和64位的dll,我們將根據以下路徑放置它們。
您將“用戶”替換為您在Linux發行版中使用的用戶名。
對於64位,我們將它們放入:
~/.wine/drive_c/windows/system32/
O
/home/”usuario”/.wine/drive_c/windows/system32/
對於32位:
~/.wine/drive_c/windows/syswow64
O
/home/”usuario”/.wine/drive_c/windows/system32/
無法解析C:\ windows \ system32
這對我不起作用
您可以按照本文中的指示手動進行操作。 :)只需將dll複製到相應的文件夾。
他要我替換上一個,好嗎?