
A DXVK használható 3D alkalmazások és játékok futtatására Linuxon a Wine segítségével
A új verziója SZO 2.0, a DXGI Direct3D 9, 10 és 11 megvalósítása, amely a Vulkan API-hívások fordításán keresztül működik. A DXVK kompatibilis illesztőprogramokat igényel.
Ebben az új verzióban fokozott követelmények a Vulkan grafikus API verziójával szemben– Most egy Vulkan 1.3 támogatással rendelkező illesztőprogram szükséges (korábban a Vulkan 1.1 volt szükséges), ami lehetővé tette a shaderek fordításával kapcsolatos új funkciók támogatásának bevezetését.
Gyakorlatban, A DXVK 2.0 bármely olyan rendszeren futtatható, amely támogatja a Proton Experimental csomag használatát D3D11 és D3D12 alapú játékok futtatásához. A Winevulkan működéséhez legalább Wine 7.1 szükséges.
Átvett kód a dxvk-native projektből, amely lehetővé teszi Linuxra natív DXVK buildek generálását (nem a Wine-hoz kötve), amelyekkel nem Windows-os, hanem közönséges Linux-alkalmazásokat lehet futtatni, amelyek hasznosak lehetnek Linuxos játékok portjainak létrehozásához anélkül, hogy a D3D alapú renderelés kódját megváltoztatnák.
Akkor már a Direct3D 9 kiterjesztett támogatása, beleértve a továbbfejlesztett memóriakezelést (memóriatükrözéses fájlokat használnak a textúra másolatok tárolására), bevezetésre került a hotspotok helyes olvasásának támogatása (megoldották a GTA IV játék közben megjelenő műtermékekkel kapcsolatos problémákat), és újratervezték az átlátszóság-vezérlés megvalósítását.
A Direct3D 10 esetében a d3d10.dll és d3d10_1.dll könyvtárak megszűntek, amelyek alapértelmezés szerint nem lettek telepítve a Wine D3D10 fejlettebb megvalósítása miatt. Ugyanakkor a D3D10 API támogatása folytatódik a d3d10core.dll könyvtárban.
A Direct3D 11 támogatása 12_1 szolgáltatásszintre frissítve ( D3D11 Feaure Level ), olyan funkciók elérése érdekében, mint a csempézett erőforrások ( Tiled Resources ), a konzervatív raszterezés ( Conservative Rasterization ) és a rendezett renderelés a raszterezőben ( Raszterizer rendezett nézetek ).
Az ID3D11DeviceContext interfész megvalósítása, amely a rajzparancsokat előállító eszközkörnyezetet képviseli, át lett tervezve, és a Windowshoz jobban hasonlít. Az újratervezés lehetővé tette a harmadik féltől származó könyvtárakkal való kompatibilitás javítását és a CPU terhelésének csökkentését. Különösen a CPU-használatot csökkentették azoknál a játékoknál, amelyek erősen használnak lusta kontextust (mint például az Assassin's Creed: Origins), vagy gyakran hívják ClearState műveletet (mint például a God of War).
Megvalósult a shaderek összeállításával kapcsolatos változások. A VK_EXT_graphics_pipeline_library bővítményt támogató Vulkan illesztőprogramok jelenlétében a Vulkan shadereket akkor fordították le, amikor a játékok D3D shadereket töltöttek be, és nem a renderelés során, ami megoldotta a játék közbeni shader-összeállítás miatti lefagyással kapcsolatos problémákat.
A többi kiemelkedő változás közül:
- Jelenleg a szükséges bővítmény csak az NVIDIA szabadalmaztatott illesztőprogramjait támogatja az 520.56.06-os verziótól kezdődően.
- A D3D11 shaderek a Vulkan memóriamodellt használják.
- Eltávolítottuk az egyszerre összekapcsolható erőforrások számának korlátozását.
Végül ha érdekel, hogy többet tudjon meg róla Az új kiadásról ellenőrizheti a részleteket A következő linken.
Hogyan adható hozzá a DXVK támogatás a Linuxhoz?
A DXVK használható 3D alkalmazások és játékok futtatására Linux alatt, a Wine használatával, amely nagyobb teljesítményű alternatívaként működik a Wine beépített Direct3D 11 implementációjával szemben, amely OpenGL-en fut.
A DXVK a Wine legújabb, stabil verzióját igényli futni. Tehát, ha még nincs telepítve. Most már csak a legújabb stabil DXVK csomagot kell letöltenünk, ezt megtaláljuk A következő linken.
wget https://github.com/doitsujin/dxvk/releases/download/v1.10.2/dxvk-1.10.2.tar.gz
A letöltés után most kibontjuk a most megszerzett csomagot, ezt megtehetjük az asztali környezetből vagy magáról a terminálról a következő parancs végrehajtásával:
tar -xzvf dxvk-2.0.tar.gz
Ezután elérjük a mappát:
cd dxvk-2.0
És végrehajtjuk az sh parancsot futtassa a telepítési parancsfájlt:
sudo sh setup-dxvk.sh install
setup-dxvk.sh install --without-dxgi
Amikor a DXVK-t a Wine előtagba telepíti. Előnye, hogy a Wine vkd3d használható a D3D12 játékokhoz, a DXVK pedig a D3D11 játékokhoz.
Az új szkript lehetővé teszi a dll szimbolikus hivatkozásokként történő telepítését, megkönnyítve a DXVK frissítését, hogy több Wine előtagot kapjon (ezt a –symlink paranccsal teheti meg).
Hogyan fogja látni a mappát A DXVK két másik dll-t tartalmaz 32 és 64 bitre te vagy a következő útvonalak szerint fogjuk elhelyezni őket.
Ahol a "felhasználó" helyettesíti a Linux disztribúcióban használt felhasználónévvel.
64 bit esetén betesszük őket:
~/.wine/drive_c/windows/system32/
O
/home/”usuario”/.wine/drive_c/windows/system32/
És 32 bitért:
~/.wine/drive_c/windows/syswow64
O
/home/”usuario”/.wine/drive_c/windows/system32/