Wine-project heeft Vkd3d 1.5 gepubliceerd met Direct3D 12-implementatie

Het Wine-project heeft een release gepubliceerd van het vkd3d 1.5-pakket met een Direct3D 12-implementatie die werkt via oproepvertaling naar de Vulkan grafische API. Het pakket bevat libvkd3d-bibliotheken met Direct3D 12-implementaties, libvkd3d-shader met shader model vertaler 4 en 5, en libvkd3d-utils met functies om het porten van Direct3D 12-applicaties te vereenvoudigen, evenals een reeks demo's, waaronder een port van glxgears naar Direct3D 12 De projectcode wordt onder licentie gedistribueerd onder LGPLv2.1.

De libvkd3d-bibliotheek ondersteunt de meeste Direct3D 12-functies, waaronder grafische en computerfaciliteiten, wachtrijen en opdrachtlijsten, handvatten en heap-handvatten, roothandtekeningen, toegang buiten de juiste volgorde, Samplers, opdrachthandtekeningen, rootconstanten, indirecte weergave, Clear-methoden *( ) en Kopiëren*().

In libvkd3d-shader wordt de vertaling van bytecode van shader-modellen 4 en 5 naar een tussenliggende SPIR-V-representatie geïmplementeerd. Ondersteunt vertex-, pixel-, mozaïekpatroon-, reken- en eenvoudige geometrie-shaders, serialisatie en deserialisatie van rootsignaturen. Shader-instructies omvatten rekenkundige, atomaire en bitbewerkingen, vergelijkings- en gegevensstroombesturingsoperatoren, monster-, verzamel- en laadinstructies, ongeordende toegangsbewerkingen (UAV, Unordered Access View).

In de nieuwe versie:

  • Er zijn talloze verbeteringen aangebracht aan de HLSL (High-Level Shader Language) shader-compiler die sinds DirectX 9.0 wordt geleverd. Inclusief verbeterde ondersteuning voor HLSL-objecttypen zoals Texture2D in structuren en arrays, toegevoegde ondersteuning voor ingebouwde functies dot(), ldexp() en lerp(), toegevoegde ondersteuning voor logische operatoren “and”, “or” voor shader-modellen 4 en 5 en “niet”, evenals de mogelijkheid om Booleaanse typen te casten.
  • De VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV optie geïmplementeerd om ongeordende toegangsrepresentatie (UAV) te laden voor SPIR-V meerdelige formaten (DXGI_FORMAT).

Bron: opennet.ru

Voeg een reactie