Lëshimi i projektit DXVK 1.3 me zbatimin Direct3D 10/11 në krye të Vulkan API

Formuar lëshimi i ndërshtresës DXVK 1.3, i cili ofron një implementim të DXGI (Infrastruktura Grafike DirectX), Direct3D 10 dhe Direct3D 11, duke punuar përmes përkthimit të thirrjeve në Vulkan API. Për të përdorur DXVK требуется mbështetje për drejtuesit Vulkan APISi
AMD RADV 18.3, NVIDIA 415.22, Intel ANV 19.0 dhe AMDVLK.

DXVK mund të përdoret për të ekzekutuar aplikacione dhe lojëra 3D në Linux duke përdorur Wine, duke shërbyer si një alternativë me performancë më të lartë ndaj zbatimit vendas Direct3D 11 të Wine që funksionon në krye të OpenGL. NË disa lojëra performanca e kombinimit Wine+DXVK tjetër nga ekzekutimi në Windows me vetëm 10-20%, ndërsa kur përdoret zbatimi Direct3D 11 i bazuar në OpenGL, performanca ulet më shumë.

Përmirësime të shtuara:

  • Optimizimi i zbatuar duke përdorur udhëzimin "discard" në shader, bazuar në shtesën Vulkan VK_EXT_shader_demote_to_helper_invocation dhe mund të përmirësojë performancën në disa lojëra. Për të përdorur optimizimin, duhet të përditësoni komponentin dhe drejtuesit e winevulkan (Intel në Mesa 19.2-git dhe NVIDIA në drejtuesin e pronarit 418.52.14-beta, drejtuesit e AMD nuk e mbështesin ende shtesën VK_EXT_shader_demote_to_helper_invocation);
  • Ofrohet përpunimi asinkron i nxjerrjes së rezultatit të interpretimit në ekran (faza prezantim). Për të reduktuar vonesën në fillin kryesor të paraqitjes, përpunimi i daljes bëhet tani në fillin e paraqitjes së komandës. Përfitimet e performancës së përpunimit asinkron janë veçanërisht të dukshme për daljen me shpejtësi të lartë të kuadrove dhe transferimet e komandave me burime intensive. Ndër lojërat në të cilat vërehet një rritje e performancës, Quake Champions vihet re kur funksionon në sisteme me GPU AMD;
  • Tani është e mundur të bootstrap burimet duke përdorur motorët e kopjimit të ofruara nga pajisja e aktivizuar me Vulkan (aktualisht mbështetet vetëm nga drejtuesit AMDVLK dhe NVIDIA). Funksioni i ri lejon një përmirësim të lehtë në konsistencën e kohës së kornizës në lojëra që ngarkojnë një numër të madh teksturash gjatë lojës;
  • Regjistrimi i përmirësuar i gabimeve që ndodhin në kushte memorie të ulët;
  • Përputhshmëri e përmirësuar me MSVC (Microsoft Visual C++);
  • Heqja e kontrolleve të përsëritura të ciklit gjatë përfundimit, gjë që mund të zvogëlojë ndjeshëm ngarkesën e CPU-së në skenarët e kufizuar me GPU.
  • Rregulloi një problem me hartëzimin e dyfishtë të nën-burimeve të imazhit që ndodhi në Final Fantasy XIV;
  • Rregulloi një përplasje për shkak të sjelljes së gabuar të metodës RSGetViewport që ndodhi në lojën Scrap Mechanic.

Burimi: opennet.ru

Shto një koment