Wine projekt avaldas Vkd3d 1.7 Direct3D 12 juurutusega

Projekt Wine on avaldanud vkd3d 1.7 paketi versiooni Direct3D 12 juurutusega, mis töötab Vulkani graafika API-le kõnede kaudu. Pakett sisaldab libvkd3d teeke koos Direct3D 12 rakendustega, libvkd3d-shaderit koos varjundimudelite 4 ja 5 tõlkijaga ja libvkd3d-utilite funktsioonidega Direct3D 12 rakenduste portimise lihtsustamiseks, samuti komplekti demonäiteid, sealhulgas porti. glxgearsist Direct3D-le 12. Projekti koodi levitatakse LGPLv2.1 litsentsi alusel.

Libvkd3d teek toetab enamikku Direct3D 12 funktsioone, sealhulgas graafika ja arvutusvahendid, järjekorrad ja käsuloendid, pidemed ja hunniku käepidemed, juursignatuurid, korrast ära juurdepääs, proovivõtturid, käsusignatuurid, juurkonstandid, kaudne renderdamine, puhastusmeetodid *( ) ja Kopeeri*(). Libvkd3d-shaderis on rakendatud varjundimudelite 4 ja 5 baitkoodi tõlkimine vahepealseks SPIR-V esituseks. Toetab tippude, pikslite, tessellatsiooni, arvutamise ja lihtsa geomeetria varjutajaid, juursignatuuri serialiseerimist ja deserialiseerimist. Varjutusjuhised hõlmavad aritmeetika-, aatomi- ja bitioperatsioone, võrdlus- ja andmevoo juhtimise operaatoreid, valimi-, kogumis- ja laadimisjuhiseid, järjestamata juurdepääsuoperatsioone (UAV, Unordered Access View).

Uues versioonis:

  • Jätkus töö varjutajate kompilaatori täiustamiseks HLSL-is (kõrgetasemeline varjundikeel):
    • Lisatud on võimalus kutsuda kohandatud funktsioone ja kasutada massiive kohandatud funktsioonide parameetritena.
    • Lisatud on tugi parameetritele SV_DispatchThreadID, SV_GroupID ja SV_GroupThreadID.
    • Lisatud on sisseehitatud funktsioonid all(), distance(), exp(), exp2(), frac(), lit(), peegelda(), sin(), cos(), smoothstep(), sqrt(), rsqrt () , samm (), transponeerige ().
    • Lisatud esialgne tugi madala täpsusega ujukomatüüpidele, nagu "min16float".
  • Märkimisväärselt täiustatud Direct3D 1/2/3 shaderi mudeliprofiilide tugi.
  • Lisatud avalik API DXBC binaarandmete sõelumiseks (vkd3d_shader_parse_dxbc) ja serialiseerimiseks (vkd3d_shader_serialize_dxbc).

Allikas: opennet.ru

Lisa kommentaar