Ekipi i Wine lëshoi VKD3D 2.0 — një version të madh të bibliotekës që implementon funksionimin e aplikacioneve me Direct3D 12 në Vulkan. VKD3D përdoret në upstream-in normal të Wine për mbështetje të aplikacioneve D3D12; nuk duhet ngatërruar me VKD3D-Proton, një dege të veçantë lojrash të Valve, e cila përdoret në Proton/Steam Play.
Projekti shpërndahet nën licencën GNU Lesser General Public License 2.1 ose një version më të vonshëm. Kodi burimor i versionit është publik në serverin WineHQ, gjithashtu kodi është I aksesueshëm përmes repozitoreve të Wine.
VKD3D 2.0 u bë një kalim nga dega 1.19 menjëherë në një version të ri kryesor. Fokusimi kryesor ishte në zhvillimin e nënstrukturës së shader-ave dhe përputhshmërisë me nivele të ulëta me Direct3D 12.
Ndryshimet kryesore:
Përmirësimi i përpunimit të HLSL-shader-ave. Ka zgjeruar mbështetje për gjuhën HLSL: janë realizuar më shumë operacione që tani përpunohen saktë nga kompajleri dhe përkthyesi VKD3D. Kjo është e rëndësishme për ekzekutimin e aplikacioneve që përdorin shader-a HLSL të tyren, dhe jo vetëm kodin e përgatitur paraprakisht.
Përmirësimi i mbështetjes për bytecode të vjetër Direct3D. Punimi është përmirësuar me llojin e vjetër të bytecode-it Direct3D për përputhshmëri me formatet e vjetra të shader-ave dhe instrumenteve që ende gjenden në aplikacione dhe motorë.
Përmirësuar puna me DXIL. Në VKD3D 2.0 vazhdoi përpunimi i DXIL — përfaqësimi modern ndërmjetës i shader-ave DirectX. Për D3D12, ky është një nga formatet kyçe, prandaj këto ndryshime ndikojnë drejtpërdrejt në saktësinë e ekzekutimit të aplikacioneve më të reja.
Jane shtuar përmirësime për effects. Në lëshim janë përfshirë ndryshimet e lidhura me effects — mekanizmat e përshkrimit dhe aplikimit të efekteve grafike në kupolën Direct3D. Kjo është më shumë një pjesë infrastrukturore, por është e rëndësishme për përputhshmërinë me kodin grafik ekzistues.
Ka një mbështetje eksperimentale për MSL. VKD3D 2.0 ka marrë mbështetje eksperimentale për gjenerimin e MSL — Metal Shading Language. Ky drejtim lidhet me portabilitetin e pjesës shader në platforma, ku Vulkan zakonisht përdoret përmes shtresave të tjera të përputhshmërisë.
Janë zgjeruar interfeset dhe mundësitë e debugging. Zhvilluesit kanë shtuar interfesa të reja dhe përmirësuar mjetet e debugging-ut VKD3D, që duhet të thjeshtojnë zhvillimin, diagnostikimin e gabimeve dhe zhvillimin e mëtejshëm të mbështetjes për Direct3D 12 në Wine.
Veçanërisht duhet theksuar: për shumicën e përdoruesve të Steam në Linux, komponenti kryesor D3D12 mbetet VKD3D-Proton, dhe jo VKD3D i zakonshëm. Megjithatë, VKD3D mbetet një pjesë e rëndësishme e vetë Wine dhe shërben si realizimi bazë i Direct3D 12 mbi Vulkan në projektin upstream.
Burimi: linux.org.ru
