Het Wine-project heeft Vkd3d 1.4 uitgebracht met Direct3D 12-implementatie

Het Wine-project heeft een release gepubliceerd van het vkd3d 1.4-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.
  • Er is een nieuwe implementatie van de Descriptor Heap voorgesteld, waarbij gebruik wordt gemaakt van de Vulkan-extensie VK_EXT_descriptor_indexing.
  • Een nieuwe hekimplementatie toegevoegd op basis van de Vulkan-extensie K_KHR_timeline_semaphore.

Bron: opennet.ru

Voeg een reactie