Nuove versioni di Wine 11.17, Wine-staging 11.17, DXVK 3.1, D7VK 2.1 e Vkd3d 2.1

È stata pubblicata una versione sperimentale dell'implementazione open source dell'API Win32 — Wine 11.17. Dalla versione 11.16 sono stati chiusi 44 report di errori e apportate 387 modifiche.

Le modifiche più importanti:

  • È stata aggiunta la supporto iniziale per l'emulazione delle modalità video, che consente di eseguire applicazioni e giochi a schermo intero con una risoluzione virtuale, che viene ridimensionata in base ai DPI del monitor esistente. Ad esempio, un vecchio gioco può utilizzare una risoluzione di 640×480, ma può essere visualizzato su uno schermo a risoluzione più alta mantenendo le proporzioni.
  • È stata aggiunta la supporto per le funzioni RtlGetSystemPreferredUILanguages e RtlGetUserPreferredUILanguages per ottenere l'elenco delle lingue preferite dell'interfaccia impostate nel registro per l'intero sistema e per singoli utenti, generato di default in base alle impostazioni della localizzazione. Sono state aggiunte anche le funzioni RtlGetProcessPreferredUILanguages, SetProcessPreferredUILanguages, RtlGetSetThreadPreferredUILanguages, SetThreadPreferredUILanguages per determinare e impostare l'elenco delle lingue preferite a livello di processi e thread.
  • Il pacchetto integrato Vkd3d con implementazione di Direct3D 12 è stato aggiornato alla versione 2.1.
  • Sono stati chiusi report di errori relativi al funzionamento delle applicazioni: 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.
  • Sono stati chiusi report di errori relativi al funzionamento dei giochi: 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.

Inoltre, si possono notare nuove uscite di progetti correlati a Wine:

  • È stata formata la versione del progetto Wine Staging 11.17, che fornisce build avanzate di Wine, contenenti patch non del tutto pronte o rischiose, non ancora idonee per la branch principale di Wine. Rispetto a Wine, in Wine Staging sono disponibili 279 patch aggiuntive. Nella nuova versione di Wine Staging è stata effettuata la sincronizzazione con il codice sorgente di Wine 11.17 e il codice di vkd3d è stato aggiornato. Nella branch principale di Wine è stata trasferita una patch che implementa nella libreria kernel32.dll la funzione SetThreadpoolTimerEx.
  • Pubblicata la versione del pacchetto vkd3d 2.1 con l'implementazione di Direct3D 12, funzionante attraverso la traduzione delle chiamate nell'API grafica Vulkan. Il pacchetto include le librerie libvkd3d con l'implementazione di Direct3D 12, libvkd3d-shader con il traduttore dei modelli dei shader e libvkd3d-utils con funzioni per semplificare il porting delle applicazioni Direct3D 12, oltre a un insieme di esempi dimostrativi, incluso il porting di glxgears su Direct3D 12. La libreria libvkd3d supporta gran parte delle funzionalità di Direct3D 12, inclusi strumenti per grafica e calcoli, code e liste di comandi, descrittori e heap descriptors, firme radice, accesso non ordinato, Sampler, firme di comandi, costanti radice, rendering indiretto, metodi Clear*() e Copy*(). Nella libvkd3d-shader è stata implementata la traduzione del bytecode dei modelli degli shader in un'intermedia rappresentazione SPIR-V.

    Nella nuova versione di vkd3d:

    • Nell'implementazione del linguaggio degli shader HLSL è stata aggiunta la supporto per le operazioni aritmetiche con il tipo "half" utilizzando i modelli degli shader 4 e 5.
    • Nel compilatore degli shader HLSL sono state rafforzate le verifiche dei dati in ingresso e in uscita, implementando un passaggio per rimuovere le variabili globali non utilizzate (uniform) nei modelli degli shader 1-3.
    • Nel backend per il linguaggio degli shader GLSL (OpenGL Shading Language) è stato implementato il supporto per l'indirizzamento indiretto dei registri di ingresso, operazioni atomiche di confronto e somma intera, operazioni bitwise e barriere, nonché operazioni di caricamento/salvataggio per UAV (Unordered Access View) e memoria condivisa tra i thread.
    • Migliorato il supporto per il vecchio formato binario degli shader Direct3D. Implementate le istruzioni "sub" e "break_cmp", i modificatori delle istruzioni "_x2", "_x4", "_x8", "_d2", "_d4" e "_d8", così come i modificatori degli operandi "_bias", "_x2" e "_bx2".
    • Nella conversione in un'intermedia rappresentazione degli shader SPIR-V è stata aggiunta la supporto per le operazioni di conversione tra numeri in virgola mobile e interi a 64 bit.
    • Nella libvkd3d-utils è stata ampliata la supporto per l'API di riflessione degli shader. Implementati gli interfacce ID3D10ShaderReflection, ID3D10ShaderReflection1 e ID3D11ShaderReflection, così come la maggior parte dei metodi delle interfacce ID3D12ShaderReflection e ID3D12ShaderReflectionType.
    • Nel vkd3d-compiler è stata aggiunta l'opzione "—allow-half-globals", mentre in libvkd3d-shader il flag VKD3D_SHADER_COMPILE_OPTION_BACKCOMPAT_ALLOW_HALF_GLOBALS per la compilazione delle variabili globali di tipo "half" in un rappresentazione di tipo "float".
  • È stata rilasciata la versione della libreria DXVK 3.1, che fornisce un'implementazione di DXGI (DirectX Graphics Infrastructure), Direct3D 8, 9, 10 e 11, funzionante tramite la traduzione delle chiamate nell'API Vulkan. Per utilizzare DXVK, sono necessari driver che supportano l'API Vulkan 1.4, come NVIDIA 575.51.02, Mesa AMD RADV 25.0, NVIDIA 25.1 e Intel ANV 25.1. DXVK può essere utilizzato per eseguire applicazioni e giochi 3D su Linux tramite Wine, fungendo da alternativa più performante alle implementazioni Direct3D integrate in Wine, che operano sopra OpenGL.

    Nella nuova versione:

    • È stata aggiunta la supporto per il rendering incrementale in DXGI, implementata tramite l'estensione Vulkan VK_KHR_incremental_present, che consente di aggiornare solo le aree modificate sullo schermo. Questa nuova funzionalità ha risolto i problemi di rendering in VirtualDJ e in vari launcher di giochi, come Ubisoft Connect.
    • È stata aggiunta la supporto per la creazione di view di oggetti di rendering (render target view) direttamente nei buffer, risolvendo i problemi di artefatti durante il rendering delle nuvole in alcuni giochi basati sul motore Frostbite, come Battlefield 3.
    • È stata implementata il caricamento di librerie per il supporto di estensioni specifiche per GPU Intel (vendor extensions).
    • Sono stati risolti problemi nei giochi Mabinogi, The Witcher 1, Ghost Recon Breakpoint, Mirrors Edge, RaceRoom Racing Experience.
  • È stata pubblicata la versione del progetto D7VK 2.2, che sviluppa l'implementazione delle API grafiche Direct3D 3, 5, 6 e 7, proposte da Microsoft nel 1996, 1997, 1998 e 1999. D7VK funziona tramite la traduzione delle chiamate nell'API Vulkan e consente, utilizzando Wine, di eseguire giochi retro su Linux legati alle API Direct3D 3, 5, 6 e 7. Il codice del progetto è scritto in C++ e distribuito sotto licenza Zlib. Per lo sviluppo è stato utilizzato il codice del backend d3d9 del progetto DXVK: D7VK traduce le API Direct3D 3, 5, 6 e 7 in chiamate Direct3D 9, che vengono poi tradotte nell'API Vulkan. Lo sviluppatore non ha intenzione di far includere D7VK all'interno di DXVK, come è avvenuto per le implementazioni delle Direct3D 8 e Direct3D 9 su Vulkan.

    Nella nuova versione è stata effettuata la transizione per lavorare sopra la release DXVK 3.1, rivedendo il controllo dei buffer eseguibili D3D3 e il conteggio dei riferimenti (refcounting) per i dispositivi D3D3, migliorando l'elaborazione delle texture per D3D5/3. Sono state apportate correzioni che migliorano il supporto per i giochi: Palantírs in The Lord of the Rings, Resident Evil 2 e Frogger.

    Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster