Testningen av den första kandidaten för släpp av Wine 8.0, den öppna implementeringen av WinAPI, har påbörjats. Koden har frysts inför släppet som förväntas i mitten av januari. Jämfört med utgåvan av Wine 7.22 har 52 felrapporter stängts och 538 ändringar gjorts.
De vigtigste ændringer:
- Paketen vkd3d med implementeringen av Direct3D 12, som fungerar genom att översätta anrop i grafiska API:et Vulkan, har uppdaterats till version 1.6.
- Optimering av systemanropskonverterare (thunk) för Vulkan och OpenGL har genomförts.
- I WinPrint har stödet för skrivardrivrutiner (Print processor) utökats.
- simulering af farveblindhed er gennemført. Simuleringen af protanopisk, deuteranopisk og tritanopisk kontrolpanelet med joystick.
- Arbetet för att stödja typen 'long' i koden för funktionen printf har slutförts.
- Felrapporter relaterade till spelens funktion har stängts: Tom Clancy's Rainbow Six: Vegas 2, The Void, Ragnarok Online, Drakan, Star Wars, Colin McRae, X-COM.
- Felrapporter relaterade till applikationers funktion har stängts: TMUnlimiter 1.2.0.0, MDB Viewer Plus, Framemaker 8, Studio One Professional 5.
Dessutom kan man nämna att Wine-projektet har publicerat paketet vkd3d 1.6 med implementeringen av Direct3D 12, som fungerar genom att översätta anrop i grafiska API:et Vulkan. Paketet innehåller biblioteken libvkd3d med implementationen av Direct3D 12, libvkd3d-shader med översättaren för shadermodeller 4 och 5 samt libvkd3d-utils med funktioner för att förenkla porteringen av applikationer för Direct3D 12, samt en uppsättning demonstrativa exempel, inklusive porteringen av glxgears till Direct3D 12. Projektets kod distribueras under LGPLv2.1-licensen.
Biblioteket libvkd3d understøtter det meste af Direct3D 12's funktionalitet, inklusive værktøjer til grafik og beregninger, køer og kommandolister, deskriptorer og hukommelsesdeskriptorer, rodsignaturer, uordentlig adgang, samples, kommandosignaturer, rodkonstanter, indirekte rendering, Clear*() og Copy*() metoder. I libvkd3d-shader er oversættelsen af bytecode for shader-modeller version 4 og 5 implementeret til et mellemliggende repræsentation kaldet SPIR-V. Vekselvirkede, pixel-, tessellerings-, beregnings- og enkle geometriske shaders støttes, ligesom serialisering og deserialisering af rodsignaturen. Af shader-instruktioner er aritmetiske, atomiske og bitoperationer, sammenligningsoperatorer og kontrolstrømmen instruktioner realiseret, samt sample-, gather- og load-instruktioner, og operationer for uordentlig adgang (UAV, Unordered Access View).
I den nya versionen har arbetet med att förbättra shaderkompilatorn på HLSL-språket (High-Level Shader Language), som tillhandahålls från och med DirectX 9.0, fortsatt. Bland förbättringarna relaterade till HLSL:
- Inledande stöd för beräkningsshaders har implementerats.
- Stödet för initialisering och tilldelning av sammansatta objekt, såsom strukturer och arrayer, har förbättrats.
- Möjligheten att ladda och spara texturresurser med oordnad åtkomst (UAV) har lagts till.
- Stödet för funktionsattribut har lagts till, och inbyggda funktioner asuint(), length(), normalize() har implementerats.
- Stödet för moduler för flyttalsberäkningar har lagts till.
- Flaggan VKD3D_SHADER_DESCRIPTOR_INFO_FLAG_UAV_ATOMICS har implementerats för att indikera atomära operationer över deskriptorer för oordnad åtkomst (UAV).
Kilde: opennet.ru
