Vyno projektas paskelbė Vkd3d 1.5 su Direct3D 12 įgyvendinimu

„Wine“ projektas paskelbė vkd3d 1.5 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:

  • Внесены многочисленные улучшения в компилятор шейдеров на языке HLSL (High-Level Shader Language), предоставляемом начиная с DirectX 9.0. В том числе в структурах и массивах улучшена поддержка объектных типов HLSL, таких как Texture2D, добавлена поддержка встроенных функций dot(), ldexp() и lerp(), для 4 и 5 моделей шейдеров добавлена поддержка логических операторов «and», «or» и «not», а также возможность приведения булевых типов.
  • Реализована опция VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV для загрузки неупорядоченного представления доступа (UAV) для многокомпонентных форматов SPIR-V (DXGI_FORMAT).

Šaltinis: opennet.ru

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