Release kandidaat voor Wine 9.0 en release vkd3d 1.10

De testfase voor de eerste kandidaat voor de releases van Wine 9.0, de open-source implementatie van WinAPI, is begonnen. De codebasis is in de bevriezingsfase voor de release, die in de tweede helft van januari wordt verwacht. In vergelijking met de release van Wine 8.21 zijn 52 foutmeldingen opgelost en zijn er 391 wijzigingen aangebracht.

De belangrijkste wijzigingen:

  • Het ingebouwde vkd3d-pakket met de implementatie van Direct3D 12, dat werkt via oproeptranslatie naar de grafische API Vulkan, is bijgewerkt naar versie 1.10.
  • De ontwikkeling van functionaliteit om Wine te gebruiken in omgevingen op basis van het Wayland-protocol zonder gebruik van XWayland en X11-componenten is voortgezet. In de driver winewayland.drv is ondersteuning voor toetsenbordindelingen toegevoegd. De ondersteuning voor de grafische API Vulkan is uitgebreid en functies zoals vkQueuePresentKHR, vkGetDeviceGroupSurfacePresentModesKHR en vkGetPhysicalDevicePresentRectanglesKHR zijn toegevoegd. De functie ClipCursor is toegevoegd en er is mogelijkheid geĆÆmplementeerd voor het werken met relatieve coƶrdinaten bij het volgen van muisbewegingen.
  • Bij het gebruik van de nieuwste releases van GnuTLS is ondersteuning voor DH (Diffie-Hellman) encryptiesleutels geĆÆmplementeerd.
  • Foutmeldingen met betrekking tot het functioneren van applicaties zijn opgelost: Notepad, MS Word, Roon, eFilm Workstation 2.x/3.x, Athena’s Charm Table Search 0.35b, Process Explorer, Araxis Merge 2023.5877, Framemaker 8, Internet Download Manager, Air Jura, SpeedCommander, ModOrganizer, RestoreDC, Acid-V VST-plugin, MIDITrail 1.4.0.
  • Foutmeldingen met betrekking tot het functioneren van games zijn opgelost: For Honor, STEEP, Far Cry 5, NFS Most Wanted, Castlevania: Lords of Shadow 2, Eurobattle, Daily Chthonicle, Crimson Skies.

Daarnaast kan de publicatie van het vkd3d 1.10-pakket door het Wine-project worden opgemerkt, dat de implementatie van Direct3D 12 biedt, werkend via oproeptranslatie naar de grafische API Vulkan. Het pakket bevat de bibliotheken libvkd3d met de implementatie van Direct3D 12, libvkd3d-shader met een vertaler voor shader-modellen 4 en 5, en libvkd3d-utils met functies voor het vereenvoudigen van de portering van Direct3D 12-applicaties, evenals een set demonstratievoorbeelden, inclusief de port van glxgears naar Direct3D 12. De code van het project wordt verdeeld onder de LGPLv2.1-licentie.

De library libvkd3d ondersteunt het merendeel van de mogelijkheden van Direct3D 12, inclusief middelen voor graphics en berekeningen, wachtrijen en commandolijsten, descriptors en heap-descriptors, root-signatures, ongeordende toegang, Samplers, command-signatures, root-constants, indirecte rendering, Clear*() en Copy*() methoden. In libvkd3d-shader is de vertaling van bytecode van shader-modellen 4 en 5 naar de tussenliggende representatie SPIR-V geĆÆmplementeerd. Er worden vertex-, pixel-, tessellatie-, compute- en eenvoudige geometrische shaders ondersteund, evenals de serialisatie en deserialisatie van root-signatures. Van de shader-instructies zijn rekenkundige, atomische en bitbewerkingen, vergelijkings- en datastroombeheersingsoperatoren, instructies sample, gather en load, en ongeordende toegang (UAV, Unordered Access View) geĆÆmplementeerd.

In de nieuwe versie is de ontwikkeling van de shadercompiler in de HLSL (High-Level Shader Language), die sinds DirectX 9.0 beschikbaar is, voortgezet: ondersteuning voor dynamische indexering van arrays is toegevoegd; de expressies 'break', 'continue' en 'switch' zijn toegevoegd; de expressies waarvoor constante samenvoeging van toepassing is, zijn uitgebreid; ingebouwde functies zoals ceil(), degrees(), radians(), fwidth(), tan(), tex2Dlod(), tex2Dproj(), texCUBEproj() en tex3Dproj() zijn geĆÆmplementeerd.

De libvkd3d-bibliotheek heeft nieuwe Direct3D 12-API's (ID3D12Device5, ID3D12GraphicsCommandList5 en ID3D12Resource1) toegevoegd en de mogelijkheid geĆÆmplementeerd om pipeline state objects te creĆ«ren. In libvkd3d-utils zijn hulpfuncties toegevoegd voor het manipuleren van DXBC: D3DGetBlobPart(), D3DGetDebugInfo(), D3DGetInputAndOutputSignatureBlob(), D3DGetInputSignatureBlob(), D3DGetOutputSignatureBlob(), D3DStripShader(). In de compiler vkd3d-compiler zijn de opties ā€˜ā€”fragment-coordinate-origin’ en ā€˜ā€”semantic-compat-map’ toegevoegd.

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster