È stata pubblicata una versione sperimentale della realizzazione open source dell'API Win32 — Wine 11.3. Dalla pubblicazione della versione 11.2, sono stati chiusi 30 rapporti di errore e apportate 223 modifiche.
Le modifiche più importanti:
- Il motore Wine Mono è stato aggiornato alla versione 11.0.0. Wine Mono è una distribuzione del Framework Mono, progettata per essere utilizzata in Wine invece del componente proprietario .NET Framework.
- Il pacchetto integrato Vkd3d con implementazione di Direct3D 12 è stato aggiornato alla versione 1.19.
- Nell'implementazione dell'API DirectSound è migliorato il supporto per i filtri con risposta all'impulso finito (FIR, Finite Impulse Response).
- È proseguita l'ottimizzazione del caricamento dei file PDB (Program Database).
- Il tema chiaro è stato rinominato in Aero per migliorare la compatibilità.
- È stato risolto il problema del ripristino del focus quando si passa alle applicazioni di gioco attraverso l'interfaccia Alt-Tab, se nel registro non è stato specificato il parametro UseTakeFocus=N.
- È continuato lo sviluppo delle librerie mshtml e msxml3, necessarie per il funzionamento dell'installatore dei prodotti Adobe Cloud, inclusa Adobe Photoshop. In mshtml è stata implementata la classe XMLSerializer. In msxml3 è stata aggiunta la gestione dei nomi dei tipi in createNode().
- Segnalazioni di errori chiuse relative al funzionamento delle applicazioni: Adobe Audition 2020, QuarkXPress 2024, Framemaker 8, Amazon Chime 5.23, 42Tags, Vavoo Webinstaller, Kodi, zools backup, ExtractNow, zdaemon, Rainmeter 4.5.23, Sysinternals.
- Segnalazioni di errori chiuse relative al funzionamento dei giochi: War Thunder, Dead or Alive Xtreme: Venus Vacation, Westwood Monopoly, Flight Simulator 2000, Guild Wars 2, iWin Games Manager V4.
È stato contemporaneamente rilasciato il progetto Wine Staging 11.3, che offre build avanzate di Wine, comprese patch non completamente pronte o rischiose, attualmente inadatte per l'inclusione nel ramo principale di Wine. Rispetto a Wine, Wine Staging fornisce 241 patch aggiuntive. Nel nuovo rilascio di Wine Staging è stata eseguita la sincronizzazione con la base di codice di Wine 11.3 e aggiornato il codice vkd3d. Sono state aggiornate le patch per garantire il funzionamento dell'installatore di Adobe Creative Cloud 2025 e 2026. L'implementazione di IXMLSerializer è stata trasferita nel ramo principale di Wine in mshtml.
Il progetto Wine ha anche rilasciato la versione del pacchetto vkd3d 1.19 con l'implementazione di Direct3D 12, funzionante tramite 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 per gli shader delle versioni 4 e 5 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 in Direct3D 12. Il codice del progetto è distribuito sotto la licenza LGPLv2.1.
La libreria libvkd3d supporta la maggior parte delle funzionalità di Direct3D 12, comprese le risorse per la grafica e i calcoli, le code e le liste di comandi, i descrittori e i descrittori delle heap, le firme radice, l'accesso non ordinato, i sampler, le firme di comando, le costanti radice, il rendering indiretto, i metodi Clear*() e Copy*(). In libvkd3d-shader è implementata la traduzione del bytecode dei modelli di shader in rappresentazione intermedia SPIR-V. Sono supportati shader di vertice, pixel, tesselazione, calcolo e geometria semplice, serializzazione e deserializzazione della firma radice. Tra le istruzioni degli shader sono realizzate operazioni aritmetiche, atomiche e bitwise, operatori di confronto e controllo del flusso di dati, istruzioni sample, gather e load, operazioni di accesso non ordinato (UAV, Unordered Access View).
Nella nuova versione di vkd3d:
- Nel pacchetto libvkd3d è stata aggiunta la supporto per le modalità di filtraggio delle texture 'minimum' e 'maximum'.
- Nell'implementazione del linguaggio degli shader HLSL sono state aggiunte istruzioni di bytecode: dp2add, loop/endloop, lrp, nrm, pow e rep/endrep.
- Nel compilatore degli shader HLSL è stata notevolmente migliorata la gestione degli array di input/output degli shader, utilizzati per il ritaglio (Clip) o l'occultamento (Cull), nella generazione della rappresentazione SPIR-V.
- È stato aggiunto il parametro VKD3D_SHADER_PARAMETER_NAME_PROJECTED_TEXTURE_MASK, che indica quali texture nel pixel shader devono essere considerate proiettate (projected).
Fonte: opennet.ru
