Op 21 januari 2020 vond de officiële release van de stabiele versie plaats
Deze versie heeft ongeveer een jaar ontwikkeling en meer dan 7400 individuele wijzigingen. Hoofdontwikkelaar Alexandre Julliard identificeert er vier:
- Ondersteuning voor modules in PE-formaat. Dit lost problemen op met verschillende kopieerbeveiligingsschema's die overeenkomen met systeemmodules op schijf en in het geheugen.
- Ondersteunt meerdere monitoren en meerdere GPU's, inclusief wijzigingen in dynamische instellingen.
- Herimplementatie van XAudio2 gebaseerd op het FAudio-project, een open implementatie van DirectX-geluidsbibliotheken. Als u overschakelt naar FAudio, kunt u een hogere geluidskwaliteit in games bereiken, volumemixen, geavanceerde geluidseffecten inschakelen en meer.
- Vulkan 1.1-ondersteuning.
Lees meer over de belangrijkste innovaties.
PE-modules
Met de MinGW-compiler zijn de meeste Wine-modules nu gebouwd in het uitvoerbare bestandsformaat PE (Portable Executable, Windows binary format) in plaats van ELF.
PE-uitvoerbare bestanden worden nu naar de map gekopieerd ~/.wine
in plaats van dummy DLL-bestanden te gebruiken, waardoor applicaties meer op echte Windows-installaties lijken.
Nog niet alle modules zijn geconverteerd naar PE-formaat. Het werk gaat door.
Grafisch subsysteem
Zoals hierboven vermeld is er ondersteuning toegevoegd voor het werken met meerdere monitoren en grafische adapters.
Het Vulkan-stuurprogramma is bijgewerkt naar Vulkan 1.1.126-specificaties.
Bovendien ondersteunt de WindowsCodecs-bibliotheek nu extra rasterformaten, inclusief palet-geïndexeerde formaten.
Direct3D
Direct3D-toepassingen op volledig scherm blokkeren nu de oproep van de screensaver.
Voor DXGI-toepassingen is het nu mogelijk om te schakelen tussen volledig scherm en venstermodus met behulp van de standaard Alt+Enter-combinatie.
De Direct3D 12-functies zijn verbeterd met ondersteuning voor het schakelen tussen volledig scherm- en venstermodi, het wijzigen van schermmodi, het schalen van weergaven en het wisselen van intervallen. Al deze functies zijn al geïmplementeerd in eerdere versies van de Direct3D API.
Het projectteam heeft ijverig gewerkt en letterlijk honderden bugs opgelost, waardoor Wine's omgang met verschillende randsituaties is verbeterd. Deze omvatten het samplen van 2D-bronnen in 3D-samplers en omgekeerd, het gebruik van invoerwaarden die buiten het bereik vallen voor transparantie- en dieptetests, het renderen met gereflecteerde texturen en buffers, het gebruik van onjuiste clippers (DirectDraw-object) en nog veel meer.
De grootte van de vereiste adresruimte bij het laden van 3D-texturen die zijn gecomprimeerd met de S3TC-methode is verkleind (in plaats van volledig te laden, worden texturen in stukjes geladen).
Voor oudere DirectDraw-toepassingen zijn verschillende verbeteringen en reparaties met betrekking tot verlichtingsberekeningen aangebracht.
De basis van grafische kaarten die in Direct3D worden herkend, is uitgebreid.
Netwerk en cryptografie
De Gecko-engine is bijgewerkt naar versie 2.47.1 om moderne tools te ondersteunen. Er zijn een aantal nieuwe HTML-API's geïmplementeerd.
MSHTML ondersteunt nu SVG-elementen.
Veel nieuwe VBScript-functies toegevoegd (zoals fout- en uitzonderingshandlers).
De mogelijkheid om HTTP-proxy-instellingen via DHCP te verkrijgen is geïmplementeerd.
In het cryptografische gedeelte is ondersteuning voor cryptografische sleutels met elliptische curve (ECC) via GnuTLS geïmplementeerd, is de mogelijkheid toegevoegd om sleutels en certificaten uit bestanden in het PFX-formaat te importeren en is ondersteuning voor het PBKDF2-wachtwoordgebaseerde sleutelgeneratieschema toegevoegd. toegevoegd.
Andere belangrijke innovaties
- Ondersteuning voor NT-kernel-spinlocks.
- Dankzij het aflopen van het patent voor de compressie van DXTn- en S3-texturen werd het mogelijk om deze in de standaardimplementatie op te nemen.
- Ondersteunt plug-and-play driverinstallatie.
- Diverse DirectWrite-verbeteringen.
- Verbeterde ondersteuning voor de Windows Media Foundation API.
- Betere synchronisatie van primitieven dankzij implementatie op futexen.
- Wine-Mono delen om ruimte te besparen in plaats van een open source .NET-implementatie voor elk
~/.wine
. - Ondersteuning voor Unicode 12.0 en 12.1.
- Implementatie van een initiële HTTP-service (HTTP.sys) ter vervanging van de Winsock API en IIS, resulterend in betere prestaties dan de Windows Sockets API.
- Betere compatibiliteit met Windows-foutopsporingsprogramma's.
- Betere LLVM MinGW-ondersteuning en verbeteringen in de cross-compilatie van WineGCC.
Ook kunnen we verbeteringen in de gebruikersinterface noemen. Geminimaliseerde vensters worden nu bijvoorbeeld weergegeven met een titelbalk in plaats van pictogrammen in Windows 3.1-stijl. Verbeterde ondersteuning voor gamecontrollers, inclusief hat-switch, stuur en pedalen.
De ingebouwde AVI-, MPEG-I- en WAVE-decoders zijn uit Wine verwijderd en vervangen door het systeem GStreamer of QuickTime.
De mogelijkheid om de debugger van Visual Studio te gebruiken voor het op afstand debuggen van applicaties die in Wine draaien, is toegevoegd, de DBGENG-bibliotheek (Debug Engine) is gedeeltelijk geïmplementeerd en de afhankelijkheid van libwine is verwijderd uit de bestanden die voor Windows zijn gecompileerd.
Om de prestaties te optimaliseren zijn verschillende timingfuncties gemigreerd om hoogwaardige systeemtimerfuncties te gebruiken, waardoor de overhead in de renderloop van veel games wordt verminderd. Er zijn nog meer prestatie-optimalisaties doorgevoerd.
Bekijk de volledige lijst met wijzigingen.
De site
- Final Fantasy XI
- Adobe Photoshop CS6 (13.0)
- wereld van warcraft 8.3.0
- EVE Online actueel
- Magie: The Gathering Online 4.x
Er kan worden aangenomen dat deze applicaties het vaakst in Wine worden gestart.
Opmerking. De release van Wine 5.0 is opgedragen aan de nagedachtenis van Józef Kucia, die in augustus 2019 op tragische wijze op 30-jarige leeftijd stierf tijdens het verkennen van een grot in het zuiden van Polen. Jozef leverde een belangrijke bijdrage aan de ontwikkeling van Direct3D Wine en was tevens hoofdauteur van het project
Bron: www.habr.com