Projekti Wine ka lëshuar Vkd3d 1.3 me realizimin e Direct3D 12.

Pas 1.5 vjetësh zhvillimi, projekti Wine publikoi versionin e paketës vkd3d 1.3 me implementimin e Direct3D 12, i cili funksionon përmes përkthimit të thirrjeve në API-në grafike Vulkan. Paketa përmban bibliotekat libvkd3d me implementimin e Direct3D 12, libvkd3d-shader me përkthyesin e modeleve të shenjave 4 dhe 5, dhe libvkd3d-utils me funksione për të lehtësuar portimin e aplikacioneve Direct3D 12, si dhe një grup shembujsh demonstrues, duke përfshirë portin glxgears në Direct3D 12. Kodi i projektit shpërndahet nën licencën LGPLv2.1.

Biblioteka libvkd3d mbështet shumicën e mundësive të Direct3D 12, duke përfshirë mjete për grafikë dhe llogaritje, radhë dhe lista komandash, deskriptora dhe grumbuj deskriptorësh, nënshkrime rrënjësore, qasje jo të renditur, Sampler-e, nënshkrime komandash, konstante rrënjësore, vizatim indirekt, metodat Clear*() dhe Copy*().

Në libvkd3d-shader është implementuar përkthimi i bytecode të modeleve të shenjave 4 dhe 5 në një përfaqësim të ndërmjetëm SPIR-V. Përkrahja për shenjaterat e kulmëve, pikselat, tessellation, llogaritëse dhe shenjaterat e thjeshta, serializimi dhe deserializimi i nënshkrimit rrënjësor. Nga komandat e shenjave janë implementuar operacione aritmetike, atomike dhe bitore, operatorë krahasimi dhe kontrolle të rrjedhës së të dhënave, komandat sample, gather dhe load, operacionet e qasjes së pa renditur (UAV, Unordered Access View).

Disa nga risitë më të rëndësishme në Vkd3d 1.3 janë:

  • MbĂ«shtetje fillestare pĂ«r kompilimin dhe pĂ«rpunimin e shenjave nĂ« gjuhĂ«n HLSL (High-Level Shader Language), e cila Ă«shtĂ« ofruar qĂ« nga DirectX 9.0.
  • MbĂ«shtetje pĂ«r grupe deskriptorĂ«sh, tĂ« definuara nĂ« modelet e shenjave 5.1.
  • MbĂ«shtetje pĂ«r operacione me numra me njĂ«si tĂ« lĂ«vizshme me saktĂ«si tĂ« dyfishtĂ« nĂ« shenja, qasjen indirekte pĂ«r shenjat e tessellimit, eksportimin e shabloneve nga shenjat, modifikuesin e shenjave 'precise' dhe barrierat globale pĂ«r burimet nĂ« memorie.
  • Implementimi i mundĂ«sisĂ« sĂ« deisassemble-shenjave Direct3D nga kodi bajt nĂ« pĂ«rfaqĂ«simin e asamblesĂ«.
  • MbĂ«shtetje pĂ«r analizimin e formatit tĂ« vjetĂ«r tĂ« kodit bajt Direct3D, e pĂ«rdorur nĂ« modelet e shenjave Direct3D 1, 2 dhe 3.
  • NĂ« libvkd3d janĂ« shtuar mundĂ«si tĂ« tilla tĂ« Direct3D 12 si nĂ«nshkrime rrĂ«njĂ«sore, numĂ«rues pamjesh me qasje jo tĂ« renditur, operacione logjike shkrirjeje pĂ«r daljen, dhe mĂ«nyra e adresimit tĂ« teksturave mirror_once. Struktura vkd3d_host_time_domain_info Ă«shtĂ« shtuar.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster