Vinholdet har udgivet VKD3D 2.0 — en større udgivelse af biblioteket, der implementerer driften af applikationer med Direkte3D 12 løbet VulkanVKD3D bruges i den almindelige upstream Wine til at understøtte D3D12-applikationer; det bør ikke forveksles med VKD3D-proton, en separat spilgren af Valve, brugt i Proton/Steam Play.
Projektet distribueres under licensen GNU Lesser General Public License 2.1 eller nyere. Udgivelseskildekode Koden, der er udgivet på WineHQ, er også tilgængelig via Wine-repositorierne.
VKD3D 2.0 blev en overgang fra grenen 1.19 Direkte til den nye hovedversion. Hovedfokus er på at udvikle shader-undersystemet og lavniveaukompatibilitet med Direct3D 12.
Nøgleændringer:
Forbedret HLSL-shaderbehandling. Understøttelsen af HLSL-sproget er blevet udvidet: flere operationer er blevet implementeret, som nu behandles korrekt af VKD3D-compileren og -oversætteren. Dette er vigtigt for at køre applikationer, der bruger native HLSL-shaders, ikke kun prækompileret bytekode.
Forbedret understøttelse af ældre Direct3D bytecode. Forbedret håndtering af ældre Direct3D bytecode-kildetyper for at sikre kompatibilitet med ældre shaderformater og -værktøjer, der stadig findes i applikationer og motorer.
Forbedret arbejde med DXIL. VKD3D 2.0 fortsætter med at forfine håndteringen af DXIL, den moderne mellemliggende repræsentation af DirectX-shaders. Det er et nøgleformat for D3D12, så disse ændringer påvirker direkte den korrekte start af nyere applikationer.
Tilføjet forbedringer af effekter. Udgivelsen inkluderer ændringer relateret til effekter – mekanismerne til at beskrive og anvende grafikeffekter i Direct3D-stakken. Dette er mere en infrastrukturkomponent, men det er vigtigt for kompatibilitet med eksisterende grafikkode.
Eksperimentel understøttelse af MSL er blevet tilføjet. VKD3D 2.0 modtog eksperimentel understøttelse til generation MSL — Metal Shading Language. Dette fokus er på shaderportabilitet på tværs af platforme, hvor Vulkan typisk bruges gennem yderligere kompatibilitetslag.
Udvidede grænseflader og fejlfindingsmuligheder. Udviklerne har tilføjet nye grænseflader og forbedrede VKD3D-fejlfindingsværktøjer, hvilket skulle forenkle udvikling, fejldiagnosticering og videreudvikling af Direct3D 12-understøttelse i Wine.
Det er værd at fremhæve separat: for størstedelen af Steam-brugere, Linux Hovedkomponenten i D3D12 forbliver VKD3D-proton, snarere end det almindelige VKD3D. VKD3D er dog fortsat en vigtig del af selve Wine og fungerer som basisimplementeringen af Direct3D 12 oven på Vulkan i upstream-projektet.
Kilde: linux.org.ru
