Projekt Wine objavio je Vkd3d 1.7 s implementacijom Direct3D 12

Projekt Wine objavio je izdanje paketa vkd3d 1.7 s implementacijom Direct3D 12 koji radi putem emitiranja poziva Vulkan grafičkom API-ju. Paket uključuje libvkd3d biblioteke s implementacijama Direct3D 12, libvkd3d-shader s prevoditeljem shader modela 4 i 5 i libvkd3d-utils s funkcijama za pojednostavljenje prijenosa Direct3D 12 aplikacija, kao i skup demo primjera, uključujući priključak od glxgears na Direct3D 12. Projektni kod se distribuira pod licencom LGPLv2.1.

Biblioteka libvkd3d podržava većinu značajki Direct3D 12, uključujući grafičke i računalne mogućnosti, redove i popise naredbi, ručke i heap ručke, korijenske potpise, pristup izvan reda, uzorke, potpise naredbi, korijenske konstante, neizravno prikazivanje, Clear metode *( ) i Kopiraj*(). U libvkd3d-shaderu, implementiran je prijevod bajt koda shader modela 4 i 5 u posrednu SPIR-V reprezentaciju. Podržava vrhove, piksele, teselaciju, računalne i jednostavne geometrijske shadere, korijensku serijalizaciju i deserijalizaciju potpisa. Upute shadera uključuju aritmetičke, atomske i bitne operacije, operatore za usporedbu i kontrolu protoka podataka, upute za uzorkovanje, prikupljanje i učitavanje, operacije neuređenog pristupa (UAV, neuređen pristupni prikaz).

U novoj verziji:

  • Nastavljen je rad na poboljšanju prevoditelja shadera u HLSL-u (High-Level Shader Language):
    • Dodana je mogućnost pozivanja prilagođenih funkcija i korištenja nizova kao parametara za prilagođene funkcije.
    • Dodana podrška za parametre SV_DispatchThreadID, SV_GroupID i SV_GroupThreadID.
    • Dodane ugrađene funkcije all(), distance(), exp(), exp2(), frac(), lit(), reflect(), sin(), cos(), smoothstep(), sqrt(), rsqrt () , korak(), transponiranje().
    • Dodana početna podrška za tipove s pomičnim zarezom niske preciznosti kao što je "min16float".
  • Značajno poboljšana podrška za profile modela shadera Direct3D 1/2/3.
  • Dodan javni API za raščlanjivanje (vkd3d_shader_parse_dxbc) i serijalizaciju (vkd3d_shader_serialize_dxbc) DXBC binarnih podataka.

Izvor: opennet.ru

Dodajte komentar