Wine 8.0 release candidate och vkd3d 1.6 release

Testning har börjat på den första releasekandidaten Wine 8.0, en öppen implementering av WinAPI. Kodbasen har lagts i en frysningsfas inför release, vilket förväntas i mitten av januari. Sedan lanseringen av Wine 7.22 har 52 felrapporter stängts och 538 ändringar har gjorts.

De viktigaste förändringarna:

  • Paketet vkd3d med en Direct3D 12-implementering som fungerar genom att sända anrop till Vulkans grafik-API har uppdaterats till version 1.6.
  • Optimering av systemanropsomvandlare (thunks) för Vulkan och OpenGL har genomförts.
  • WinPrint har utökat stöd för utskriftsprocessorer.
  • Förbättrad joystick kontrollpanel.
  • Arbetet har slutförts för att ge stöd för den "långa" typen i printf-funktionskoden.
  • Felrapporter relaterade till driften av spelen är stängda: Tom Clancy's Rainbow Six: Vegas 2, The Void, Ragnarok Online, Drakan, Star Wars, Colin McRae, X-COM.
  • Stängda felrapporter relaterade till driften av applikationer: TMUnlimiter 1.2.0.0, MDB Viewer Plus, Framemaker 8, Studio One Professional 5.

Dessutom kan vi notera publiceringen av Wine-projektet av vkd3d 1.6-paketet med en implementering av Direct3D 12, som arbetar genom översättningen av anrop till Vulkans grafik-API. Paketet innehåller libvkd3d-bibliotek med implementeringar av Direct3D 12, libvkd3d-shader med en översättare av shader-modellerna 4 och 5 och libvkd3d-utils med funktioner för att förenkla porteringen av Direct3D 12-applikationer, samt en uppsättning demoexempel, inklusive en port av glxgears till Direct3D 12. Projektkoden distribueras licensierad under LGPLv2.1.

libvkd3d-biblioteket stöder de flesta Direct3D 12-funktioner, inklusive grafik och datorfaciliteter, köer och kommandolistor, handtag och heap-handtag, rotsignaturer, out-of-order access, Samplers, kommandosignaturer, rotkonstanter, indirekt rendering, Rensa metoder *( ) och Copy*(). I libvkd3d-shader implementeras översättningen av bytekod för shadermodellerna 4 och 5 till en mellanliggande SPIR-V-representation. Stöder vertex, pixel, tessellation, beräkning och enkel geometriskuggning, rotsignaturserialisering och deserialisering. Shader-instruktioner inkluderar aritmetiska, atom- och bitoperationer, jämförelse- och dataflödeskontrolloperatörer, samplings-, insamlings- och laddningsinstruktioner, oordnade åtkomstoperationer (UAV, Unordered Access View).

Den nya versionen fortsätter att förbättra shader-kompilatorn i HLSL (High-Level Shader Language), med start med DirectX 9.0. HLSL-relaterade förbättringar inkluderar:

  • Initialt stöd för compute shaders har implementerats.
  • Förbättrat stöd för initiering och tilldelning av sammansatta objekt som strukturer och arrayer.
  • Lade till möjligheten att ladda och spara texturresurser med hjälp av out-of-order access (UAV).
  • Lade till stöd för funktionsattribut och implementerade inbyggda funktioner asuint(), length(), normalize().
  • Tillagt stöd för flyttalsmoduler.
  • Implementerade flaggan VKD3D_SHADER_DESCRIPTOR_INFO_FLAG_UAV_ATOMICS för att indikera atomoperationer på deskriptorer för unordered access representation (UAV).

Källa: opennet.ru

Lägg en kommentar