është publikuar shtresa , e cila ofron implementimin e DXGI (DirectX Graphics Infrastructure), Direct3D 10 dhe Direct3D 11, që funksionon përmes përkthimit të thirrjeve në API Vulkan. Për përdorimin e DXVK kërkohet prania e drejtuesve me mbështetje për , të tilla si
AMD RADV 18.3, NVIDIA 415.22, Intel ANV 19.0 dhe .
DXVK mund të përdoret për të ekzekutuar aplikacione dhe lojëra 3D në Linux me ndihmën e Wine, duke shërbyer si një alternativë me performancë më të lartë ndaj implementimit të Direct3D 11 të integruar në Wine, i cili funksionon mbi OpenGL. Në performanca e lidhjes Wine+DXVK është më e lartë sesa në Windows, vetëm 10-20%, ndërsa duke përdorur implementimin e Direct3D 11 mbi OpenGL, performanca bie më ndjeshëm.
Përmirësimet e shtuara:
- Implementimi i optimizimit duke përdorur instruktionen 'discard' në shader-e, i bazuar në zgjatimin Vulkan VK_EXT_shader_demote_to_helper_invocation, që mund të rrisë performancën në disa lojëra. Për të përdorur optimizimin, nevojitet të përditësohen komponenti winevulkan dhe driverat (Intel deri në Mesa 19.2-git dhe NVIDIA deri në driverin proprietary 418.52.14-beta, driverat AMD ende nuk e mbështesin zgjatimin VK_EXT_shader_demote_to_helper_invocation);
- Sigurimi i përpunimit asinkron të daljes së rezultateve të renderimit në ekran (stage ). Për të reduktuar vonesat në rrjedhën kryesore të renderimit, përpunimi i daljes tani bëhet në rrjedhën e dorëzimit të komandave (command submission thread). Fitimi në performancë nga përpunimi asinkron është sidomos i dukshëm kur ekrani ka një frekuencë të lartë kadre dhe në transmetimin e komandave që kërkon shumë burime. Nga lojërat që tregojnë rritje performance është Quake Champions, kur ekzekutohet në sisteme me GPU AMD;
- Ka një mundësi të ngarkimit fillestar të burimeve duke përdorur motorët e kopjimit (copy engine), të ofruar nga pajisje me mbështetje Vulkan (për momentin mbështetet vetëm nga driverat AMDVLK dhe NVIDIA). Kjo mundësi e re lejon pak përmirësim të qëndrueshmërisë së kohës për kënd në lojëra që ngarkojnë shumë tekstura gjatë lojës;
- Përmirësuar regjistrimi i gabimeve që ndodhin për shkak të mungesës së memories;
- Përmirësuar kompatibiliteti me MSVC (Microsoft Visual C++);
- Të larguara kontrollimet ciklike të përsëritura gjatë daljes, që mund të reduktojë ndjeshëm ngarkesën në CPU në skenarët me GPU të kufizuar;
- Rrëzuar problemi me mapimin e dyfishtë të sub-resurseve të imazheve, që shfaqej në lojën Final Fantasy XIV;
- Rrëzuar rrëzimi për shkak të sjelljes jo të duhur të metodës RSGetViewport, që shfaqej në lojën Scrap Mechanic.
Burimi: opennet.ru
