Wine project je izdal Vkd3d 1.4 z implementacijo Direct3D 12

Projekt Wine je objavil izdajo paketa vkd3d 1.4 z implementacijo Direct3D 12, ki deluje prek oddajanja klicev v grafični API Vulkan. Paket vključuje knjižnice libvkd3d z implementacijami Direct3D 12, libvkd3d-shader s prevajalnikom modelov senčil 4 in 5 in libvkd3d-utils s funkcijami za poenostavitev prenosa aplikacij Direct3D 12, kot tudi niz demo primerov, vključno s pristaniščem glxgears v Direct3D 12. Koda projekta se distribuira pod licenco LGPLv2.1.

Knjižnica libvkd3d podpira večino funkcij Direct3D 12, vključno z grafičnimi in računalniškimi zmogljivostmi, čakalnimi vrstami in seznami ukazov, ročaji in ročaji kopice, korenskimi podpisi, dostopom izven vrstnega reda, vzorčevalniki, podpisi ukazov, korenskimi konstantami, posrednim upodabljanjem, jasnimi metodami *( ) in Kopiraj*().

V libvkd3d-shader je implementiran prevod bajtne kode modelov senčil 4 in 5 v vmesno predstavitev SPIR-V. Podpira vertex, pixel, teselation, compute in preproste geometrijske senčnike, serializacijo korenskega podpisa in deserializacijo. Navodila shaderja vključujejo aritmetične, atomske in bitne operacije, operaterje za primerjavo in nadzor pretoka podatkov, navodila za vzorčenje, zbiranje in nalaganje, operacije neurejenega dostopa (UAV, pogled neurejenega dostopa).

V novi različici:

  • V prevajalnik senčil HLSL (High-Level Shader Language), ki je na voljo od DirectX 9.0, so bile narejene številne izboljšave.
  • Predlagana je bila nova izvedba kopice deskriptorjev z uporabo razširitve Vulkan VK_EXT_descriptor_indexing.
  • Dodana nova implementacija ograje, ki temelji na razširitvi Vulkan K_KHR_timeline_semaphore.

Vir: opennet.ru

Dodaj komentar