De experimentele uitgave van de open implementatie van de Win32 API - Wine 10.2 is gepubliceerd. Sinds de release van 10.1 zijn er 20 bugrapporten gesloten en 269 wijzigingen aangebracht.
De belangrijkste wijzigingen:
- Het ingebouwde pakket Vkd3d met de implementatie van Direct3D 12 is bijgewerkt naar versie 1.15.
- Er is ondersteuning toegevoegd voor het instellen van threadprioriteiten.
- De mogelijkheid om de Wow64-modus (64-bit Windows-on-Windows) dynamisch in te schakelen, is geïmplementeerd, waardoor 32-bit Windows-applicaties kunnen worden uitgevoerd op 64-bit Unix-systemen.
- De ontwikkeling van de Bluetooth-driver is voortgezet.
- Er zijn bugrapporten gesloten die verband hielden met de werking van applicaties: Wordpad, cmd.
- Bugrapporten die verband hielden met de werking van spellen zijn gesloten: Cyberpunk 2077, Final Fantasy XI Online, Guild Wars, MSWT Kart 2004, YOU and ME and HER, Myst, Sekiro: Shadows Die Twice.
Daarnaast kan de release van het pakket vkd3d 1.15 met de implementatie van Direct3D 12 worden opgemerkt, die werkt via aanroeptransformatie in de grafische API Vulkan. Het pakket bevat de bibliotheken libvkd3d met de implementatie van Direct3D 12, libvkd3d-shader met de vertaler voor shader model 4 en 5, en libvkd3d-utils met functies voor het vereenvoudigen van het porteren van Direct3D 12-applicaties, evenals een set demonstratievoorbeelden, inclusief de port van glxgears naar Direct3D 12. De code van het project is beschikbaar onder de LGPLv2.1-licentie.
In de nieuwe versie van de HLSL-shadercompiler is de ondersteuning voor tessellatieshaders voortgezet en is de definitie van functie-overloading verbeterd. In libvkd3d is de functie vkd3d_queue_signal_on_cpu() toegevoegd. Voor HLSL zijn ingebouwde functies geïmplementeerd: GatherCmp(), GatherCmpAlpha(), GatherCmpBlue(), GatherCmpGreen(), GatherCmpRed(), InterlockedAdd(), InterlockedAnd(), InterlockedCompareExchange(), InterlockedCompareStore(), InterlockedExchange(), InterlockedMax(), InterlockedMin(), InterlockedOr(), InterlockedXor() en isinf().
Bron: opennet.ru
