DXVK 3.0 vÀljalaskmine

Pool aastat kestnud arendustööd on vĂ€lja tulnud vĂ€rske versioon DXVK (Direct3D to Vulkan Translation Layer), avatud raamatukogu, mis muudab API Direct3D 8, 9, 10 ja 11 kutsed Vulkan'i kĂ€skudeks. See vĂ”imaldab kĂ€ivitada Windowsi jaoks vĂ€lja töötatud 3D rakendusi ja mĂ€nge sĂŒsteemides, kus Direct3D kohane tugi puudub, samas kasutades efektiivsema graafilise API Vulkan'i vĂ”imalusi.

Olulised muudatused
Uues versioonis on tehtud ĂŒleminek Vulkan 1.4 spetsifikatsioonide ja laiendite kasutusele, mis nĂ”uab vastavat ĂŒhilduvat draiverit.

DXVK kasutab nĂŒĂŒd dxbc-spirv kĂ”ikide toetatud shader'i mudelite shader'ite kompileerimiseks. See lahendab mitmed probleemid, mida oli varem vĂ”imatu lahendada:
Renderdamise probleemid mÀngudes, mis tulenevad kas sellest, et mÀngud tuginevad mÀÀramatule kÀitumisele, vÔi sellest, et FXC genereerib mÔnel juhul vale koodi, nagu Postal: Brain Damaged, Snowrunner.
Genereeritud kood on kompaktsem kui lihtsalt SPIR-V koodi muudetud versioon, mis vĂ€hendab DXVK-i poolt kasutatavat mĂ€lu mĂ€rgatavalt. Sellistes mĂ€ngudes nagu Overwatch vĂ”i God of War vĂ”imaldab see sÀÀsta umbes 1 GiB sĂŒsteemimĂ€lu.
Shaderite kompileerimine on nĂŒĂŒd tĂ€ielikult kantud töövoogudele, mis vĂ”ib vĂ€hendada kĂ€ivitusaega mĂ€ngudes nagu Days Gone ja Final Fantasy XIV vĂ”i mĂ”nel juhul vĂ€hendada tĂ”rkeid. Varem tegi DXVK SPIR-V tĂ”lke rakenduse tööprotsessis ja kompileeris ainult reaalsed Vulkan-toruveerud töövoogudena.
DXVK-i kompileeritud shaderite vahevormi vahemĂ€lu salvestatakse nĂŒĂŒd kettale praeguse Wine'i eelistuse AppData/Local katalooge. See on vajalik, kuna kompileerimise aeg on suurenenud vĂ”rreldes vanema kompilaatoriga. VahemĂ€lu teed saab muuta muutuja DXVK_SHADER_CACHE_PATH abil.

Uut Vulkan VK_EXT_descriptor_heap laiendust kasutatakse nĂŒĂŒd vaikimisi draiverites, mis seda toetavad.
Oodatakse, et vÔrreldes vana VK_EXT_descriptor_bufferil pÔhineva sidumismudeli rakendusega, pakub see uus mudel umbes sama tasemega protsessori jÔudlust, vÀltides samas Nvidia GPU-de jÔudluse langust (nvidia-drivers-595.84 ja uuemad on vajalikud).
D3D9 muutused
Kuna emuleerida vananenud fikseeritud funktsioonidega toru, mis vÔimaldab D3D8 ja D3D9 mÀngudel renderdada ilma shaderiteta, genereeris DXVK varem jooksvalt oma shaderikoodi toru oleku pÔhjal. MÔnedes mÀngudes, nagu Unreal Tournament 2004, vÔis see pÔhjustada mÀrkimisvÀÀrseid lagimisi isegi pÀrast pikki mÀngimise perioode.

Selle parandamiseks rakendab DXVK nĂŒĂŒd fikseeritud funktsioonidega toru kahe uber-shaderina, mille optimeeritud variandid kompileeritakse taustal.
Puhvri laadimise optimeerimine
Et tĂ€psemalt vastata Windowsi kĂ€itumisele, laaditakse erinevad puhverdamise tĂŒĂŒbid, mis varem paiknesid otse VRAM-is, nĂŒĂŒd nĂ”udmisel ning ellu on viidud ka mĂ€lu piiramisstrateegia, mis lahendab aadressiruumi seotud crash'id mitmes 32-bitises D3D9 mĂ€ngus.
Need muudatused vĂ”ivad samuti parandada jĂ”udlust sĂŒsteemides, kus BAR-i suurust ei saa muuta, nĂ€iteks mĂ€ngudes nagu GTA IV.

SĂŒsteemides, mis toetavad piisavalt VK_EXT_sample_locations ja VK_EXT_extended_dynamic_state3, töötab nĂŒĂŒd D3DRS_MULTISAMPLEANTIALIAS renderdussĂ€te Ă”igesti, vĂ”imaldades rakendustel kasutada ĂŒhe valiku rasteriseerimist mitme valikuga renderdamise sihtobjektides. See lahendab kasutajaliidese renderdamise probleemid mĂ€ngudes nagu Anno 1701, Men of War Assault Squad ja sarnased probleemid teistes mĂ€ngudes, kus MSAA on sisse lĂŒlitatud.

Ühised ressursid töötavad nĂŒĂŒd originaalse Wine'i rakendusega ja ei nĂ”ua enam Protonile spetsiifilisi parandusi.

Samuti vÀÀrib mainimist, et paljude mĂ€ngude jaoks on tehtud palju parandusi, mis nĂŒĂŒd töötavad paremini.

Allikas: linux.org.ru

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster