Tim Wine je objavio VKD3D 2.0 — veliko izdanje biblioteke koja implementira rad aplikacija s Direct3D 12 više VulkanVKD3D se koristi u redovnom uzvodnom Wineu za podršku D3D12 aplikacija; ne treba ga miješati s VKD3D-Proton, zasebna grana igre tvrtke Valve, korištena u Proton/Steam Playu.
Projekt se distribuira pod licencom GNU Manja opća javna licenca 2.1 ili novija. Objavite izvorni kod Objavljen na WineHQ-u, kod je također dostupan putem Wine repozitorija.
VKD3D 2.0 je postao prijelaz iz grane 1.19 Izravno na novu glavnu verziju. Glavni fokus je na razvoju shader podsustava i niskorazinskoj kompatibilnosti s Direct3D 12.
Ključne promjene:
Poboljšana obrada HLSL shadera. Proširena je podrška za HLSL jezik: implementirano je više operacija koje sada ispravno obrađuje VKD3D kompajler i prevoditelj. To je važno za pokretanje aplikacija koje koriste izvorne HLSL shadere, a ne samo prekompilirani bajtkod.
Poboljšana podrška za naslijeđeni Direct3D bajtkod. Poboljšano rukovanje starijim tipovima izvornog koda Direct3D-a kako bi se osigurala kompatibilnost sa starijim formatima i alatima za shadere koji se još uvijek nalaze u aplikacijama i engineima.
Poboljšan rad s DXIL-om. VKD3D 2.0 nastavlja usavršavati rukovanje DXIL-om, modernim međureprezentacijom DirectX shadera. To je ključni format za D3D12, tako da ove promjene izravno utječu na ispravno pokretanje novijih aplikacija.
Dodana su poboljšanja efekata. Izdanje uključuje promjene vezane uz efekte - mehanizme za opisivanje i primjenu grafičkih efekata u Direct3D stogu. Ovo je više infrastrukturna komponenta, ali je važna za kompatibilnost s postojećim grafičkim kodom.
Dodana je eksperimentalna podrška za MSL. VKD3D 2.0 je dobio eksperimentalnu podršku za generiranje MSL — Metal Shading Language. Ovaj fokus je na prenosivosti shadera na platformama gdje se Vulkan obično koristi putem dodatnih slojeva kompatibilnosti.
Proširena sučelja i mogućnosti otklanjanja pogrešaka. Programeri su dodali nova sučelja i poboljšali alate za ispravljanje pogrešaka u VKD3D-u, što bi trebalo pojednostaviti razvoj, dijagnostiku pogrešaka i daljnji razvoj podrške za Direct3D 12 u Wineu.
Vrijedi posebno naglasiti: za većinu korisnika Steama, Linux glavna D3D12 komponenta ostaje VKD3D-Proton, a ne obični VKD3D. Međutim, VKD3D ostaje važan dio samog Winea i služi kao osnovna implementacija Direct3D 12 povrh Vulkana u uzvodnom projektu.
Izvor: linux.org.ru
