Opublikowano eksperymentalną wersję otwartej implementacji Win32 API — Wine 11.3. Od momentu wydania 11.2 zamknięto 30 zgłoszeń błędów i wprowadzono 223 zmiany.
Najważniejsze zmiany:
- Silnik Wine Mono został zaktualizowany do wersji 11.0.0. Wine Mono to dystrybucja Framework Mono, przeznaczona do użycia w Wine zamiast proprietary komponentu .NET Framework.
- Wbudowany pakiet Vkd3d z implementacją Direct3D 12 zaktualizowano do wersji 1.19.
- W implementacji API DirectSound poprawiono wsparcie dla filtrów z końcową charakterystyką impulsową (FIR).
- Kontynuowano optymalizację ładowania plików PDB (Program Database).
- Jasny motyw został przemianowany na Aero w celu zwiększenia zgodności.
- Rozwiązano problem z przywracaniem fokusowania przy przełączaniu na aplikacje gier poprzez interfejs Alt-Tab, jeśli w rejestrze wyraźnie nie ustawiono parametru UseTakeFocus=N.
- Kontynuowano rozwój bibliotek mshtml i msxml3, które są niezbędne do działania instalatora produktów Adobe Cloud, w tym Adobe Photoshop. W mshtml zaimplementowano klasę XMLSerializer. W msxml3 dodano obsługę nazw typów w createNode().
- Zamknięto zgłoszenia błędów związane z działaniem aplikacji: Adobe Audition 2020, QuarkXPress 2024, Framemaker 8, Amazon Chime 5.23, 42Tags, Vavoo Webinstaller, Kodi, zools backup, ExtractNow, zdaemon, Rainmeter 4.5.23, Sysinternals.
- Zamknięto zgłoszenia błędów związane z działaniem gier: War Thunder, Dead or Alive Xtreme: Venus Vacation, Westwood Monopoly, Flight Simulator 2000, Guild Wars 2, iWin Games Manager V4.
Jednocześnie przygotowano wydanie projektu Wine Staging 11.3, które oferuje rozszerzone wersje Wine, zawierające częściowo gotowe lub ryzykowne poprawki, które nie nadają się do przyjęcia do głównej gałęzi Wine. W porównaniu do Wine, Wine Staging oferuje 241 dodatkowe poprawki. W nowym wydaniu Wine Staging dokonano synchronizacji z bazą kodową Wine 11.3 oraz zaktualizowano kod vkd3d. Zaktualizowano poprawki, aby zapewnić działanie instalatora Adobe Creative Cloud 2025 i 2026. Do głównego składu Wine przeniesiono implementację IXMLSerializer do mshtml.
Projekt Wine opublikował również wydanie pakietu vkd3d 1.19 z implementacją Direct3D 12, która działa poprzez translację wywołań w graficznym API Vulkan. Pakiet zawiera biblioteki libvkd3d z realizacją Direct3D 12, libvkd3d-shader z translato-rem shaderów modelu 4 i 5 oraz libvkd3d-utils z funkcjami ułatwiającymi portowanie aplikacji Direct3D 12, a także zestaw przykładów demonstracyjnych, w tym port glxgears na Direct3D 12. Kod projektu jest rozpowszechniany na licencji LGPLv2.1.
Biblioteka libvkd3d obsługuje większość możliwości Direct3D 12, w tym narzędzia do grafiki i obliczeń, kolejki i listy poleceń, deskryptory i deskryptory sterty, sygnały korzenia, dostęp nieuporządkowany, Samplery, sygnały poleceń, stałe korzenia, niezależne renderowanie, metody Clear*() i Copy*(). W libvkd3d-shader zrealizowano translację kodu bajtowego modeli shaderów do pośredniego formatu SPIR-V. Obsługiwane są shadery wierzchołków, pikseli, tesselacyjne, obliczeniowe i proste shadery geometryczne, serializacja i deserializacja sygnału korzenia. Z instrukcji shaderowych zrealizowane zostały operacje arytmetyczne, atomowe i bitowe, operatory porównania i zarządzania przepływem danych, instrukcje sample, gather i load, operacje dostępu nieuporządkowanego (UAV, Unordered Access View).
W nowej wersji vkd3d:
- Do biblioteki libvkd3d dodano wsparcie dla trybów filtracji tekstur „minimum” i „maximum”.
- Do realizacji języka shaderów HLSL dodano instrukcje kodu bajtowego: dp2add, loop/endloop, lrp, nrm, pow i rep/endrep.
- W kompilatorze shaderów HLSL znacznie poprawiono obsługę tablic wejściowych/wyjściowych shaderów, które są wykorzystywane do przycinania (Clip) lub ukrywania (Cull) podczas generowania reprezentacji SPIR‑V.
- Dodano parametr VKD3D_SHADER_PARAMETER_NAME_PROJECTED_TEXTURE_MASK, wskazujący, które tekstury w shaderze pikseli należy uznać za projektowane (projected).
Źródło: opennet.ru
