Vīna projekts izlaida Vkd3d 1.4 ar Direct3D 12 ieviešanu

Projekts Wine ir publicējis vkd3d 1.4 pakotnes izlaidumu ar Direct3D 12 ieviešanu, kas darbojas, izmantojot apraides zvanus uz Vulkan grafikas API. Paketē ietilpst libvkd3d bibliotēkas ar Direct3D 12 implementācijām, libvkd3d-shader ar ēnotāju modeļu 4 un 5 tulkotāju un libvkd3d-utils ar funkcijām Direct3D 12 lietojumprogrammu pārnešanas vienkāršošanai, kā arī demonstrācijas piemēru kopa, ieskaitot portu. glxgears uz Direct3D 12. Projekta kods tiek izplatīts licencēts saskaņā ar LGPLv2.1.

Libvkd3d bibliotēka atbalsta lielāko daļu Direct3D 12 līdzekļu, tostarp grafikas un skaitļošanas iespējas, rindas un komandu sarakstus, rokturus un kaudzes rokturus, saknes parakstus, piekļuvi ārpus secības, paraugus, komandu parakstus, saknes konstantes, netiešo renderēšanu, notīrīt metodes *( ) un Kopēt*().

Programmā libvkd3d-shader ir realizēta 4. un 5. ēnotāju modeļu baitkoda tulkošana starpposma SPIR-V attēlojumā. Atbalsta virsotņu, pikseļu, teselāciju, aprēķinu un vienkāršus ģeometrijas ēnotājus, saknes parakstu serializāciju un deserializāciju. Shader instrukcijas ietver aritmētiskās, atomu un bitu darbības, salīdzināšanas un datu plūsmas vadības operatorus, izlases, apkopošanas un ielādes instrukcijas, nekārtotas piekļuves darbības (UAV, Unordered Access View).

Jaunajā versijā:

  • HLSL (High-Level Shader Language) ēnotāju kompilatorā, kas tiek nodrošināts kopš DirectX 9.0, ir veikti daudzi uzlabojumi.
  • Ir ierosināta jauna deskriptoru kaudzes ieviešana, izmantojot paplašinājumu Vulkan VK_EXT_descriptor_indexing.
  • Pievienota jauna žoga ieviešana, kuras pamatā ir Vulkan paplašinājums K_KHR_timeline_semaphore.

Avots: opennet.ru

Pievieno komentāru