Nouvelles versions de Wine 11.17, Wine-staging 11.17, DXVK 3.1, D7VK 2.1 et Vkd3d 2.1

Une version expérimentale de l'implémentation open source de l'API Win32 — Wine 11.17 a été publiée. Depuis le lancement de 11.16, 44 rapports de bogues ont été fermés et 387 modifications ont été apportées.

Modifications les plus importantes :

  • Un support initial pour l'émulation des modes d'écran a été ajouté, permettant d'exécuter des applications et des jeux en plein écran avec leur propre résolution virtuelle, qui est ensuite redimensionnée en fonction du DPI de l'écran. Par exemple, un ancien jeu peut utiliser une résolution de 640×480 mais s'afficher sur un écran haute résolution en conservant les proportions.
  • Support des fonctions RtlGetSystemPreferredUILanguages et RtlGetUserPreferredUILanguages ajouté pour obtenir la liste des langues préférées dans l'interface, configurées dans le registre pour l'ensemble du système et les utilisateurs individuels, et par défaut générées en fonction des paramètres de locale. Les fonctions RtlGetProcessPreferredUILanguages, SetProcessPreferredUILanguages, RtlGetSetThreadPreferredUILanguages et SetThreadPreferredUILanguages ont également été ajoutées pour déterminer et définir la liste des langues préférées au niveau des processus et des threads.
  • Le package intégré Vkd3d avec l'implémentation de Direct3D 12 a été mis à jour vers la version 2.1.
  • Les rapports de bogues liés au fonctionnement des applications suivants ont été fermés : certmgr.exe, Signtools, Advanced SystemCare 6.4, Autodesk 3ds Max 9, SketchUp 2021, Nokia S60 5th Edition SDK 1.0, PDFCreator, SafeDisc v2.05.030, Bigrats, PTC Pro Engineer Wildfire V5, VisualSubSync 1.0.2.1, PS4 Remote Play 2.x, MigrosBank EBanking 8.2.x, Sparda Bank SecureApp 1.x, MSXML 6.0, Sennheiser Wireless Systems Manager 4.4, Netscape Navigator 3.04, xEdit.
  • Les rapports de bogues liés au fonctionnement des jeux suivants ont été fermés : GTA : Vice City, GTA : San Andreas, Tetris JR, Worms Blast, Horizon Chase Turbo, Star Wars : Knights of the Old Republic I/II, GunBound, Marathon, Ground Control, Ankh — Anniversary Edition, Clive Barker’s Jericho.

On peut également noter les nouvelles versions de projets liés à Wine :

  • La version du projet Wine Staging 11.17 a été formée, fournissant des compilations avancées de Wine, incluant des patches encore non pleinement prêts ou risqués, qui ne peuvent pas encore être acceptés dans la branche principale de Wine. Comparé à Wine, Wine Staging fournit 279 patches supplémentaires. Dans cette nouvelle version, Wine Staging a synchronisé sa base de code avec celle de Wine 11.17 et a mis à jour le code vkd3d. Un patch, implémentant la fonction SetThreadpoolTimerEx dans la bibliothèque kernel32.dll, a été transféré dans le corps principal de Wine.
  • Publication du paquet vkd3d 2.1 avec une implémentation de Direct3D 12, fonctionnant via la traduction d'appels en API graphique Vulkan. Le paquet comprend les bibliothèques libvkd3d avec l'implémentation de Direct3D 12, libvkd3d-shader avec le translateur de modèles de shaders et libvkd3d-utils avec des fonctions pour faciliter le portage d'applications Direct3D 12, ainsi qu'un ensemble d'exemples de démonstration, y compris le port de glxgears vers Direct3D 12. La bibliothèque libvkd3d prend en charge la plupart des fonctionnalités de Direct3D 12, y compris les outils pour la graphiques et le calcul, les files d'attente et les listes de commandes, les descripteurs et les descripteurs de tas, les signatures racines, l'accès non ordonné, les échantillonneurs, les signatures de commandes, les constantes racines, le rendu indirect, les méthodes Clear*() et Copy*(). Dans libvkd3d-shader, la traduction du bytecode des modèles de shaders en représentation intermédiaire SPIR-V a été implémentée.

    Dans la nouvelle version de vkd3d :

    • La prise en charge des opérations arithmétiques avec le type «half» a été ajoutée à l'implémentation du langage de shaders HLSL lors de l'utilisation des modèles de shaders 4 et 5.
    • Dans le compilateur de shaders HLSL, les vérifications des données d'entrée et de sortie ont été renforcées, et un passage pour supprimer les variables globales non utilisées (uniforms) a été mis en œuvre dans les modèles de shaders 1-3.
    • Dans le backend pour le langage de shaders GLSL (OpenGL Shading Language), la prise en charge de l'adressage indirect des registres d'entrée, des opérations atomiques de comparaison et de l'addition entière, des opérations bit à bit et des barrières, ainsi que des opérations de chargement/enregistrement pour UAV (Unordered Access View) et la mémoire partagée du groupe de threads a été réalisée.
    • La prise en charge de l'ancien format binaire de shaders Direct3D a été améliorée. Les instructions «sub» et «break_cmp», les modificateurs d'instructions «_x2», «_x4», «_x8», «_d2», «_d4» et «_d8», ainsi que les modificateurs d'opérandes «_bias», «_x2» et «_bx2» ont été implémentées.
    • Lors de la conversion en représentation intermédiaire des shaders SPIR-V, la prise en charge des opérations de conversion des nombres à virgule flottante en entiers à 64 bits est apparue.
    • Dans libvkd3d-utils, la prise en charge de l'API de réflexion des shaders a été étendue. Les interfaces ID3D10ShaderReflection, ID3D10ShaderReflection1 et ID3D11ShaderReflection ont été implémentées, ainsi que la plupart des méthodes des interfaces ID3D12ShaderReflection et ID3D12ShaderReflectionType.
    • Dans vkd3d-compiler, l'option «—allow-half-globals» a été ajoutée, et dans libvkd3d-shader, le drapeau VKD3D_SHADER_COMPILE_OPTION_BACKCOMPAT_ALLOW_HALF_GLOBALS pour la compilation des variables globales de type «half» en représentation de type «float».
  • Une nouvelle version de la couche DXVK 3.1 a été publiée, fournissant une implémentation de DXGI (DirectX Graphics Infrastructure), Direct3D 8, 9, 10 et 11, fonctionnant via la translation d'appels vers l'API Vulkan. Pour utiliser DXVK, des pilotes prenant en charge l'API Vulkan 1.4 sont nécessaires, tels que NVIDIA 575.51.02, Mesa AMD RADV 25.0, NVIDIA 25.1 et Intel ANV 25.1. DXVK peut être utilisé pour exécuter des applications 3D et des jeux sur Linux avec Wine, agissant comme une alternative de haute performance aux implémentations Direct3D intégrées à Wine, fonctionnant au-dessus d'OpenGL.

    Dans la nouvelle version :

    • La prise en charge du rendu incrémental dans DXGI a été ajoutée, mise en œuvre à l'aide de l'extension Vulkan VK_KHR_incremental_present, permettant de mettre à jour uniquement les zones modifiées à l'écran. Cette nouvelle fonctionnalité a résolu des problèmes de rendu dans VirtualDJ et divers lanceurs de jeux, tels qu'Ubisoft Connect.
    • Ajout de la prise en charge de la création de vues de rendu (render target view) directement dans les tampons, ce qui a résolu des problèmes d'artefacts lors du rendu des nuages dans certains jeux utilisant le moteur Frostbite, tels que Battlefield 3.
    • Mise en œuvre du chargement de bibliothèques pour le support des extensions spécifiques au GPU Intel (vendor extensions).
    • Des problèmes ont été résolus dans les jeux Mabinogi, The Witcher 1, Ghost Recon Breakpoint, Mirrors Edge, RaceRoom Racing Experience.
  • Une version du projet D7VK 2.2 a été publiée, développant l'implémentation des API graphiques Direct3D 3, 5, 6 et 7, proposées par Microsoft en 1996, 1997, 1998 et 1999. D7VK fonctionne via la translation d'appels vers l'API Vulkan et permet, avec Wine, de lancer des jeux rétro liés aux API Direct3D 3, 5, 6 et 7 sous Linux. Le code du projet est écrit en C++ et distribué sous licence Zlib. La base du développement s'appuie sur le code du backend d3d9 du projet DXVK — D7VK transforme les API Direct3D 3, 5, 6 et 7 en appels Direct3D 9 qui sont ensuite traduits en API Vulkan. Le développeur n'a pas l'intention d'intégrer D7VK dans DXVK, comme cela a été fait avec les implémentations de Direct3D 8 et Direct3D 9 au-dessus de Vulkan.

    Dans la nouvelle version, le passage à l'exécution avec la version DXVK 3.1 a été effectué, avec une révision de la vérification des tampons exécutables D3D3 et du comptage des références (refcounting) pour les dispositifs D3D3, ainsi qu'une meilleure gestion des textures pour D3D5/3. Des corrections ont été apportées pour améliorer la prise en charge des jeux : Palantírs in The Lord of the Rings, Resident Evil 2 et Frogger.

    Source : opennet.ru

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster