Vyno projektas paskelbė Vkd3d 1.7 su Direct3D 12 įgyvendinimu

„Wine“ projektas paskelbė vkd3d 1.7 paketo su „Direct3D 12“ diegimu, kuris veikia per „Vulkan“ grafikos API transliavimo skambučius, leidimą. Paketą sudaro libvkd3d bibliotekos su Direct3D 12 įgyvendinimu, libvkd3d-shader su Shader modelių 4 ir 5 vertėju ir libvkd3d-utils su funkcijomis, palengvinančiomis Direct3D 12 programų perkėlimą, taip pat demonstracinių pavyzdžių rinkinys, įskaitant prievadą. glxgears į Direct3D 12. Projekto kodas platinamas pagal LGPLv2.1 licenciją.

Libvkd3d biblioteka palaiko daugumą „Direct3D 12“ funkcijų, įskaitant grafiką ir skaičiavimo priemones, eiles ir komandų sąrašus, rankenas ir krūvos rankenas, šakninius parašus, netvarkingą prieigą, pavyzdžius, komandų parašus, šaknies konstantas, netiesioginį atvaizdavimą, išvalymo metodus *( ) ir Kopijuoti* (). „Libvkd3d-shader“ yra įgyvendintas 4 ir 5 šešėlių modelių baitinio kodo vertimas į tarpinį SPIR-V atvaizdavimą. Palaiko viršūnių, pikselių, teseliaciją, skaičiavimo ir paprastus geometrijos atspalvius, šakninio parašo serializavimą ir deserializavimą. Shader instrukcijos apima aritmetines, atomines ir bitų operacijas, palyginimo ir duomenų srauto valdymo operatorius, imties, rinkimo ir įkėlimo instrukcijas, netvarkingos prieigos operacijas (UAV, Unordered Access View).

Naujoje versijoje:

  • Toliau buvo dirbama tobulinant šešėlių kompiliatorių HLSL (aukšto lygio šešėlių kalba):
    • Pridėta galimybė iškviesti pasirinktines funkcijas ir naudoti masyvus kaip pasirinktinių funkcijų parametrus.
    • Pridėtas parametrų SV_DispatchThreadID, SV_GroupID ir SV_GroupThreadID palaikymas.
    • Pridėtos integruotos funkcijos all(), distance(), exp(), exp2(), frac(), lit(), reflekt(), sin(), cos(), smoothstep(), sqrt(), rsqrt () , žingsnis (), perkelti ().
    • Pridėtas pradinis palaikymas mažo tikslumo slankiojo kablelio tipams, pvz., „min16float“.
  • Žymiai patobulintas Direct3D 1/2/3 šešėlių modelių profilių palaikymas.
  • Pridėta vieša API, skirta DXBC dvejetainiams duomenims analizuoti (vkd3d_shader_parse_dxbc) ir serializuoti (vkd3d_shader_serialize_dxbc).

Šaltinis: opennet.ru

Добавить комментарий