Het Wine-project heeft Vkd3d 1.5 gepubliceerd met de implementatie van Direct3D 12

Het Wine-project heeft de release van het vkd3d 1.5-pakket gepubliceerd, dat Direct3D 12 implementeert via oproeptranslaties naar de Vulkan graphics API. Het pakket bevat de libvkd3d-bibliotheken met de implementatie van Direct3D 12, libvkd3d-shader met een vertaler voor shadermodellen 4 en 5, en libvkd3d-utils met functies om het porteren van Direct3D 12-applicaties te vergemakkelijken, evenals een set demonstratievoorbeelden, waaronder de poort van glxgears naar Direct3D 12. De code van het project wordt verspreid onder de LGPLv2.1-licentie.

De libvkd3d-bibliotheek ondersteunt de meeste mogelijkheden van Direct3D 12, waaronder middelen voor graphics en berekeningen, wachtrijen en commandolijsten, beschrijvers en heap-beschrijvers, root-signaturen, ongeordende toegang, samplers, commandosignaturen, root-constanten, indirecte rendering, en de Clear*() en Copy*() methoden.

In libvkd3d-shader is de transformatie van bytecode voor shadermodellen 4 en 5 naar de tussentijdse representatie SPIR-V geïmplementeerd. Er worden vertex-, pixel-, tessellatie-, compute- en eenvoudige geometrische shaders ondersteund, evenals de serialisatie en deserialisatie van root-signaturen. Van de shader-instructies zijn rekencapaciteiten, atomische en bitoperaties, vergelijkingsoperatoren en gegevensstroombeheersinstructies, sample-, gather- en load-instructies, en ongeordende toegang operaties (UAV, Unordered Access View) geïmplementeerd.

In de nieuwe versie:

  • Er zijn talrijke verbeteringen aangebracht in de HLSL (High-Level Shader Language) shadercompiler, die sinds DirectX 9.0 wordt geleverd. Onder andere is de ondersteuning voor objecttypen in HLSL, zoals Texture2D, verbeterd in structuren en arrays, zijn ingebouwde functies zoals dot(), ldexp() en lerp() toegevoegd, en is ondersteuning voor logische operatoren 'and', 'or' en 'not' toegevoegd voor shadermodellen 4 en 5, evenals de mogelijkheid om booleaanse typen te casten.
  • De VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV-optie is geïmplementeerd voor het laden van ongeordende toegang weergave (UAV) voor meercomponentformaten in SPIR-V (DXGI_FORMAT).

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster