Projekti Wine publikoi Vkd3d 1.7 me implementimin e Direct3D 12

Projekti Wine publikoi versionin e paketës vkd3d 1.7 me implementimin e Direct3D 12, i cili funksionon përmes translacionit të thirrjeve në API-në grafike Vulkan. Paketimi përfshin bibliotekat libvkd3d me realizimin e Direct3D 12, libvkd3d-shader me përkthyesin e modeleve të shenjave 4 dhe 5 dhe libvkd3d-utils me funksione për thjeshtimin e portimit të aplikacioneve Direct3D 12, si dhe një grup shembujsh demonstrues, duke përfshirë portin e glxgears në Direct3D 12. Kodi i projektit shpërndahet nën licencën LGPLv2.1.

Biblioteka libvkd3d mbështet shumicën e funksioneve të Direct3D 12, duke përfshirë mjete për grafikë dhe llogaritje, radhë dhe lista komandash, deskriptues dhe deskriptues grumbujsh, nënshkrime rrënjësorë, qasje të pa renditur, Sampler-a, nënshkrime komandash, konstantat rrënjësore, vizatimin indirekt, metodat Clear*() dhe Copy*(). Në libvkd3d-shader është implementuar përkthimi i kodit të bajtëve të modeleve 4 dhe 5 të shenjuesve në përfaqësimin e ndërmjetëm SPIR-V. Mbështeten shenjuesit e pikave, pikselave, tesselatorëve, llogaritësve dhe shenjuesit e gjeometrisë së thjeshtë, si dhe serializimi dhe deserializimi i nënshkrimit rrënjësor. Nga instrukcionet e shenjuesve janë realizuar operacione aritmetike, atomike dhe bitore, operatorët e krahasimit dhe kontrollit të rrjedhës së të dhënave, instrukcionet sample, gather dhe load, operacionet e qasjes së pa renditur (UAV, Unordered Access View).

Në këtë version të ri:

  • Puna pĂ«r pĂ«rmirĂ«simin e kompilerit tĂ« shenjave nĂ« gjuhĂ«n HLSL (High-Level Shader Language) Ă«shtĂ« vazhduar:
    • Shtuar mundĂ«sia e thirrjes sĂ« funksioneve tĂ« pĂ«rdoruesve dhe pĂ«rdorimi i matricave si parametra pĂ«r funksionet e pĂ«rdoruesve.
    • Shtuar mbĂ«shtetje pĂ«r parametrat SV_DispatchThreadID, SV_GroupID dhe SV_GroupThreadID.
    • Shtuar funksione tĂ« ndĂ«rtuara all(), distance(), exp(), exp2(), frac(), lit(), reflect(), sin(), cos(), smoothstep(), sqrt(), rsqrt(), step(), transpose().
    • Shtuar mbĂ«shtetje fillestare pĂ«r lloje tĂ« saktĂ«sisĂ« tĂ« ulĂ«t me pikĂ« lundruese, tĂ« tilla si «min16float».
  • PĂ«rmirĂ«suar ndjeshĂ«m mbĂ«shtetja pĂ«r profilin e modeleve tĂ« shenjave Direct3D 1/2/3.
  • Shtuar njĂ« API publik pĂ«r analizim (vkd3d_shader_parse_dxbc) dhe serializim (vkd3d_shader_serialize_dxbc) tĂ« tĂ« dhĂ«nave binare DXBC.

Burimi: opennet.ru

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