The Wine project has released Vkd3d 1.17 with the implementation of Direct3D 12.

Wine-projektet har offentliggjort version 1.17 af vkd3d-pakken med implementering af Direct3D 12, som fungerer gennem opkaldstranslation til grafisk API Vulkan. Pakken inkluderer bibliotekerne libvkd3d med implementering af Direct3D 12, libvkd3d-shader med oversætteren til shader-modellerne 4 og 5 samt libvkd3d-utils med funktioner, der forenkler porteringen af Direct3D 12-applikationer, samt et sæt demonstrations-eksempler, herunder porteringen af glxgears til Direct3D 12. Koden til projektet distribueres under licensen LGPLv2.1.

Biblioteket libvkd3d understøtter det meste af funktionaliteterne i Direct3D 12, inklusive værktøjer til grafik og beregninger, køer og kommandolister, deskriptorer og hobe-deskriptorer, rod-signaturer, uordentlig adgang, samplere, kommandosignaturer, rodkonstanter, indirekte tegning, metoderne Clear*() og Copy*(). I libvkd3d-shader er der implementeret oversættelse af shader-modellens bytekode til det mellemliggende format SPIR-V. Støtte til vertex-, pixel-, tesselerings-, beregnings- og enkle geometriske shaderne, serialisering og deserialisering af rod-signatur. Af shader-instruktioner er der implementeret aritmetiske, atomare og bitoperationer, sammenligningsoperatører og kontrolstraumsinstruktioner, samt instruktioner som sample, gather og load, og operationer for uordentlig adgang (UAV, Unordered Access View).

I den nye version:

  • Implementeringen af HLSL-shadersproget har fået indledende support til delt hukommelse for gruppe-tråde, udvidet support til geometriske shaders og tilføjet en parser til StructuredBuffer-ressourcer.
  • Udviklingen af implementationen af MSL (Metal Shading Language) fortsætter, anvendt af Apple i grafisk API Metal. For eksempel er der tilføjet support til loops, indirekte adressering af konstante buffere, tekstursampling samt forskellige operationer inden for heltalsaritmetik og sammenligning.
  • I libvkd3d-biblioteket er der tilføjet metoden EnumerateMetaCommands() i implementeringen af ID3D12Device5 API'et.
  • En ny type shaders, "tx" (VKD3D_SHADER_SOURCE_TX), er blevet tilføjet, som bruges til at indlæse teksturbehandlingsshaders.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster