Sākotnēji izveidots operētājsistēmai Linux, DXVK var arī palīdzēt jums "labot" vecās spēles operētājsistēmā Windows un uzlabot to veiktspēju. Lūk, kāpēc un kā.
Direct3D ir bijusi daļa no Windows spēļu gadu desmitiem, apvienojot segmentēto datoru aparatūras ainavu zem viena 3D iespējota jumta. Tomēr lietotne, kas galvenokārt izveidota operētājsistēmai Linux, DXVK, dažkārt ir daudz labāka izmantošana, pat ja izmantojat operētājsistēmu Windows.
Vai vēlaties labāku saderību un, vēl svarīgāk, veiktspēju savām lietotnēm un spēlēm? Tad jums ir jāizmēģina DXVK.
Problēma ar DirectX operētājsistēmā Windows
Microsoft izveidoja DirectX kā "vienotu risinājumu", kas palīdzēja programmētājiem izmantot jebkura datora aparatūras iespējas. Tā vietā, lai katrai aparatūras daļai rakstītu atšķirīgu kodu, programmatūras izstrādātāji varētu "mērķēt" uz DirectX DirectDraw (2D grafika), Direct3D (aparatūras paātrinātā 3D) un DirectSound (audio) bibliotēkām. Pēc tam ļaujiet Microsoft risinājumam "tulkot" to kodu katras aparatūras daļas "dzimtajā valodā".
DirectX kļuva par neaizvietojamu Windows pamattehnoloģiju, un kopš tā laika tā ir attīstījusies. Tomēr ar Direct3D ir mazs trūkums: tas nav 100% saderīgs ar atpakaļejošu datumu.
Microsoft un to GPU veidotāji, kas atbalsta Direct3D API (kā Nvidia, AMD un Intel), ir laiku pa laikam atteicās atbalsts funkcijām, kas tika ieviestas iepriekšējās Direct3D versijās, bet kuras nekad netika iegūtas vilce. Tādējādi dažas vecākas spēles var nedarboties pareizi modernā GPU ar jaunākajām Direct3D versijām.
Kas ir Vulkāns?
Domājams, ka "atvērtāka" atbilde uz Microsoft slēgtā koda Direct3D, OpenGL bija 3D grafikas bibliotēku mutācijas versija, ko izmanto Silicon Graphics grafikas darbstacijās.
Tomēr OpenGL vienmēr atpalika no funkciju viedokļa, salīdzinot ar Microsoft Direct3D. Galu galā šķita racionālāk atsākt centienus. Tāpēc tika izveidots Vulkan, kas pazīstams arī kā "OpenGL Next", piedāvājot labāku veiktspēju un lielāku kontroli pār aparatūru.
Tāpat kā OpenGL un atšķirībā no Microsoft Windows Direct3D, Vulkan ir "atvērts" un vairāku platformu. Varat izmantot Vulkan operētājsistēmās Windows, Linux un pat viedtālruņos. Lai gan tas netiek sākotnēji atbalstīts Mac datoros, to var izmantot, izmantojot MoltenVK.
Tā bija īsā versija. Lai uzzinātu vairāk par Vulkan, skatiet mūsu rakstu par kādas ir Vulkan izpildlaika bibliotēkas sistēmā Windows.
Kas ir DXVK?
DXVK ir iesaiņojums, kas "tulko" Direct3D uz Vulkan. Cilvēku pasaulē tulks var būt starpnieks starp angļu un japāņu valodas runātāju, ļaujot viņiem saprast vienam otru. Līdzīgi, "iesaiņotāji" vai "tulkošanas slāņi" var "paņemt" kodu, kas rakstīts noteiktai aparatūras daļai, platformai vai API, un tulkot to, lai tas darbotos citā.
Sākotnēji DXVK tika izstrādāts operētājsistēmai Linux ar Valve atbalstu, kas to izmanto arī SteamOS un Steam Deck. Vairāk par to varat uzzināt mūsu rakstā, kurā mēs to redzējām kas ir Steam Proton un kā tas palaiž Windows spēles Steam Deck.
Kāpēc jums vajadzētu izmantot DXVK operētājsistēmā Windows?
Ja spēle jūsu aparatūrā jau darbojas labi, nav iemesla izmantot DXVK. Taču dažas spēles, kas rakstītas vecākām DirectX versijām, nedarbojas "pareizi" (ja vispār) jaunākās DirectX versijās un modernajā aparatūrā.
"Tulkojot" veco un kļūdaino Direct3D kodu modernākā Vulkan API, veiktspējas nodeva (ja tāda ir) ir minimāla. Tajā pašā laikā problemātiskas spēles ar bojātu grafiku vai trūkstošām funkcijām var atkal kļūt pilnībā spēlējamas.
Tā kā Vulkan ir līdzvērtīgs Direct3D 12, un abas ir daudz labākas (un ātrākas) nekā vecākas Direct3D versijas (kā mēs redzējām, kad mēs salīdzinājām DirectX 11 VS DirectX 12), veco Direct3D spēļu "tulkošana" uz Vulkan dažreiz var uzlabot spēles veiktspēju.
Intel darbs pie saviem Arc GPU ir pierādījums tam. Intel varētu mēģināt pievienot atbalstu katram vecākam nosaukumam Arc GPU draiveros. Tā vietā Intel nolēma turpināt uzlabot DXVK. Sākotnējie Intel “eksperimenta” rezultāti noveda līdz pat 2x veiktspējas paaugstinājumam vecākiem nosaukumiem, un desmitiem spēļu var tikt atskaņoti “izmantojot” DXVK.
Kā lietot DXVK operētājsistēmā Windows
DXVK lietošana operētājsistēmā Windows ir vienkārša, jo nav ko pielāgot vai konfigurēt. Jums tas tikai jālejupielādē, jāizvelk pareizajā spēles mapē, un tas ir gatavs lietošanai.
Tomēr jums ir jāizmanto pareizā DXVK versija, kas atbilst jūsu spēlē izmantotajai Direct3D versijai.
Visticamāk, tas ir vienkāršāk, ja mēs kopā izietam visu procesu, lai redzētu, kā varat lejupielādēt jaunāko DXVK versiju, noteikt savas spēles "tehnoloģiju" un instalēt pareizos DLL pareizajā mapē.
Kā lejupielādēt DXVK
DXVK ir atvērtā pirmkoda programmatūra, ko var izmantot bez maksas. Jaunāko versiju varat atrast vietnē GitHub.
- Apmeklējiet DXVK oficiālā GitHub lapa un noklikšķiniet uz Jaunākais versijas saite lapas labajā pusē, zem Izlaidumi.
- Ritiniet uz leju izlaidumu lapā un atrodiet Aktīvi jaunākās versijas sadaļa. Noklikšķiniet uz jaunākā DXVK tar.gz arhīva, lai to lejupielādētu. Rakstīšanas laikā tā bija versija 2.2.
- Saglabājiet lejupielādēto arhīvu kaut kur, jo tā saturs būs jāizvelk katras spēles mapē, kuru vēlaties palaist ar DXVK, nevis Direct3D.
Kā izvēlēties pareizo DXVK versiju
Ja vēlaties uzzināt, kura Direct3D versija tiek izmantota jūsu spēlē, var palīdzēt vietne PC Gaming Wiki.
- Apmeklējums PC spēļu Wiki ar pārlūkprogrammu un izmantojiet meklēšanas lauku augšējā labajā stūrī, lai atrastu spēli, kurai vēlaties pievienot DXVK.
- Kad atrodat savu spēli, apmeklējiet tās lapu un ritiniet uz leju, lai sasniegtu Cita informācija sadaļā. Pievērsiet uzmanību API tabulām. Tur, uz Tehniskās specifikācijas un Atbalstīts kolonnās, jūs redzēsit Direct3D versiju, ko izmanto jūsu spēle. Apakšā, Izpildāms, 32 bitu, un 64 bitu kolonnas "pateiks", kuru arhitektūru jums vajadzētu izvēlēties.
Kā pievienot DXVK savām spēlēm
Tagad, kad zināt, kura Direct3D versija un CPU arhitektūra tiek izmantota jūsu spēlē, varat tās mapei pievienot pareizo DXVK versiju.
- Atveriet DXVK arhīvu ar savu iecienītāko arhīvu pārvaldnieku (šajā rakstā mēs izmantojam WinRAR) un ievadiet vienu DXVK mapi, ko tur redzēsit.
- Iekšpusē atradīsit divas apakšmapes, viena katrai datora arhitektūrai. Ievadiet savai spēlei pareizo. Pat ja jūsu operētājsistēma ir 64 bitu, tāpat kā lielākā daļa mūsdienu Windows versiju, ja jūsu spēle ir 32 bitu, jums vajadzētu izvēlēties 32 bitu mapi.
- Izvēlieties DXGI.DLL kā arī pareizais DLL versijai Direct3D jūsu spēle tiek izmantota. Kā redzēsit, ir vēl trīs DLL — pa vienam katrai no iepriekšējām Direct3D versijām: 9, 10 un 11.
- Atrodiet vietējo mapi, kurā ir instalēta jūsu spēle, un atrodiet apakšmapi ar tās izpildāmo failu ("failu, no kura spēle darbojas"). Izvelciet DLL no iepriekšējās darbības uz šo mapi.
Kā pārbaudīt un salīdzināt savu uzlaboto spēli
Ja palaižat savu spēli tagad, tai vajadzētu izmantot Vulkan, nevis Direct3D, un, cerams, tā darbosies labāk.
Pat ja jūs neredzat nekādas dramatiskas kadru nomaiņas ātruma izmaiņas, dažkārt uzlabojumus var "sajust" citos veidos. Piemēram, mēs izmēģinājām DXVK ar klasisko Batman: Arkham City datorā, kas aprīkots ar Ryzen 5900x, 64 GB RAM un Nvidia RTX 3070 GPU. Mūsu aparatūra jau pārsniedza šīs vecās spēles labākās specifikācijas, sasniedzot ļoti augstu kadru ātrumu. Pat ja viņi ar Vulkan kļūtu augstāki, atšķirība nebūtu viegli pamanāma.
Tomēr spēles darbība šķita raitāka. Izmantojot DXVK, pārejas starp ekrāniem, ielādes līmeņi un Alt + Tab nospiešana bija gandrīz tūlītējas.
Kad nevajadzētu lietot DXVK
DXVK ir daudz priekšrocību, un tas var pārnest vecāku spēļu veiktspēju mūsdienu laikmetā. Neskatoties uz to, tas nav sudraba lode uzlabotai veiktspējai, un dažreiz to vienkārši nav vērts izmantot.
1. DXVK neuzlabo spēles veiktspēju
Ja savai spēlei esat pievienojis DXVK DLL, bet pēc tam neredzējāt nekādas atšķirības, varat tos noņemt vēlreiz, ja vēlaties. Lai to izdarītu, varat izdzēst DLL, ko esat pievienojis spēles mapei.
2. DXVK rada sliktāku veiktspēju vai rada jaunas nepilnības
Dažreiz DXVK pievienošana spēlei var radīt pretēju efektu. Diemžēl galalietotājs nevar novērst šādas problēmas.
Vai pēc DXVK pievienošanas parādījās spēles veiktspējas tvertne vai vizuāli traucējumi? Izejiet no spēles un izdzēsiet DXVK DLL no tās direktorijas.
3. Jūs vēlaties spēlēt savu spēli tiešsaistē
DXVK ir saderības slānis un ietekmē tikai spēles grafisko izvadi. Tomēr daži uzņēmumi ir pret jebkādām savu spēļu modifikācijām, lai nodrošinātu godīgu vidi visiem.
Iespējams, ka DXVK nav "krāpšanās", taču tā joprojām ir "spēles modifikācija", un tā var tikt atzīmēta kā tāda.
4. Spēlei jau ir iebūvēts Vulkan atbalsts
Ja spēle jau izmanto Vulkan API, piemēram, Doom Eternal, nav iemesla iestatīt tās izvadi uz Direct3D, lai pēc tam tulkotu to uz Vulkan.
5. Spēle izmanto Direct3D 12
Tā kā Direct3D 12 ir gandrīz līdzvērtīgs Vulkan, nav ko iegūt, pārtulkojot vienu īpaši modernu grafikas API citā.
Uzlabojiet savas vecās spēles, izmantojot "tulkoto" 3D operētājsistēmā Windows
Tas, kas sākās kā veids, kā spēlēt vairāk ar Windows saistītu spēļu operētājsistēmā Linux, kļuva par noderīgu saderības risinājumu un veiktspējas palielinātāju. Tāpēc saglabājiet jaunāko DXVK DLL arhīvu. Pievienojiet tos jebkurai spēlei, kurā vēlaties novērst kļūmes, uzlabot tās veiktspēju, iegūt vienmērīgāku darbību spēlē un uzlabot tās atsaucību.
Pat ja tas nepalīdzēs, tā izmēģināšana prasīs tikai sekundes, un biežāk nekā nē, jūs varētu būt pārsteigts par rezultātiem.