Projekt Wine vydal Vkd3d 1.5 s implementací Direct3D 12

Projekt Wine vydal verzi balíčku vkd3d 1.5 s implementací Direct3D 12, která funguje prostřednictvím překladů volání do grafického API Vulkan. Balíček obsahuje knihovny libvkd3d s implementací Direct3D 12, libvkd3d-shader s překladačem modelů shaderů 4 a 5 a libvkd3d-utils s funkcemi pro usnadnění portování aplikací Direct3D 12, jakož i sadu demonstračních příkladů, včetně portu glxgears na Direct3D 12. Kód projektu je distribuován pod licencí LGPLv2.1.

Knihovna libvkd3d podporuje většinu funkcí Direct3D 12, včetně prostředků pro grafiku a výpočty, front a seznamů příkazů, popisovačů a popisovačových hromad, kořenových signatur, neuspořádaného přístupu, vzorkovačů, signatur příkazů, kořenových konstant, nepřímého vykreslování, metod Clear*() a Copy*().

V libvkd3d-shader probíhá překlad bajtkódu modelů shaderů 4 a 5 do meziformátu SPIR-V. Podporovány jsou vertexové, pixelové, tesselační, výpočetní a základní geometrické shadery, serializace a deserializace kořenové signatury. Z instrukcí shaderu jsou implementovány aritmetické, atomové a bitové operace, operátory porovnání a řízení toku dat, instrukce sample, gather a load, operace neuspořádaného přístupu (UAV, Unordered Access View).

V nové verzi:

  • Bylo implementováno mnoho vylepšení do překladače shaderů v jazyce HLSL (High-Level Shader Language), který je k dispozici od verze DirectX 9.0. Včetně toho byla v strukturách a polích vylepšena podpora objektových typů HLSL, jako je Texture2D, přidána podpora vestavěných funkcí dot(), ldexp() a lerp(), pro modely shaderů 4 a 5 byla přidána podpora logických operátorů "and", "or" a "not", a také možnost převodu boolean typů.
  • Byla implementována volba VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV pro načítání neuspořádaného přístupu (UAV) pro vícerozměrné formáty SPIR-V (DXGI_FORMAT).

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster