Nové verzie Wine 11.17, Wine-staging 11.17, DXVK 3.1, D7VK 2.1 a Vkd3d 2.1

Bol vydaný experimentálny release otvorenej implementácie Win32 API — Wine 11.17. Od vydania 11.16 bolo uzavretých 44 chýb a vykonaných 387 zmien.

Najdôležitejšie zmeny:

  • Bola pridaná počiatočná podpora emulácie režimov obrazovky, čo umožňuje spúšťať aplikácie a hry na celej obrazovke s vlastným virtuálnym rozlíšením, ktoré sa pri skutočnom vykresľovaní škáluje s ohľadom na DPI existujúceho monitora. Napríklad stará hra môže používať rozlíšenie 640×480, ale zobraziť sa na obrazovke s vyšším rozlíšením so zachovaním pomerov.
  • Bola pridaná podpora funkcií RtlGetSystemPreferredUILanguages a RtlGetUserPreferredUILanguages na získanie zoznamu preferovaných jazykov v rozhraní, ktoré sú nastavené v registry pre celú sústavu a jednotlivých používateľov a predvolene vytvárané na základe nastavení lokality. Takisto boli pridané funkcie RtlGetProcessPreferredUILanguages, SetProcessPreferredUILanguages, RtlGetSetThreadPreferredUILanguages, SetThreadPreferredUILanguages na určenie a nastavenie zoznamu preferovaných jazykov na úrovni procesov a vlákien.
  • Zabudovaný balík Vkd3d s implementáciou Direct3D 12 bol aktualizovaný na verziu 2.1.
  • Uzavreté hlásenia o chybách spojených s aplikáciami: 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.
  • Uzavreté hlásenia o chybách spojených s hrami: 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.

Ďalšie informácie o nových vydaniach projektov súvisiacich s Wine:

  • Bol formovaný release projektu Wine Staging 11.17, poskytujúci rozšírené zostavy Wine, ktoré obsahujú nedokončené alebo riskantné záplaty, zatiaľ nevhodné na prijatie do hlavnej vetvy Wine. V porovnaní s Wine v Wine Staging je k dispozícii 279 ďalších záplat. V novom release Wine Staging bola vykonaná synchronizácia s kódovou základňou Wine 11.17 a aktualizovaný kód vkd3d. Do hlavného zloženia Wine bola presunutá záplata implementujúca funkciu SetThreadpoolTimerEx v knižnici kernel32.dll.
  • Bol vydaný balík vkd3d 2.1 s implementáciou Direct3D 12, ktorá funguje cez preklad volaní do grafického API Vulkan. Balík obsahuje knižnice libvkd3d s implementáciou Direct3D 12, libvkd3d-shader s prekladačom shader modelov a libvkd3d-utils s funkciami na zjednodušenie portovania aplikácií Direct3D 12, ako aj súbor demonstračných príkladov, vrátane portu glxgears na Direct3D 12. Knižnica libvkd3d podporuje väčšinu funkcií Direct3D 12, vrátane prostriedkov pre grafiku a výpočty, radov a príkazových zoznamov, popisovačov a hromadných popisovačov, koreňových podpisov, neporiadkového prístupu, Sampler-ov, podpisov príkazov, koreňových konštánt, nepriamu (indirect) vykresľovanie, metódy Clear*() a Copy*(). V libvkd3d-shader bola implementovaná konverzia bytecode shader modelov do medzi-prezentácie SPIR-V.

    V novej verzii vkd3d:

    • Implementácia jazyka shaderov HLSL bola rozšírená o podporu aritmetických operácií s typom „half“ pri používaní modelov shaderov 4 a 5.
    • V kompilátore shaderov HLSL boli posilnené kontroly vstupných a výstupných údajov, bola implementovaná fáza na odstránenie nepoužívaných globálnych premenných (uniform) v modeloch shaderov 1-3.
    • V backend-e pre jazyk shaderov GLSL (OpenGL Shading Language) bola implementovaná podpora nepriamych adries vstupných registrov, atomárnych operácií porovnávania a celočíselného sčítania, bitových operácií a bariér, operácií načítania/sťahovania pre UAV (Unordered Access View) a zdieľanú pamäť skupiny vlákien.
    • Zlepšená podpora starého binárneho formátu shaderov Direct3D. Implementované boli inštrukcie „sub“ a „break_cmp“, modifikátory inštrukcií „_x2“, „_x4“, „_x8“, „_d2“, „_d4“ a „_d8“, ako aj modifikátory operandov „_bias“, „_x2“ a „_bx2“.
    • Pri konverzii do medzi-prezentácie shaderov SPIR-V bola pridaná podpora operácií konverzie čísel s plávajúcou desatinnou čiarkou na 64-bitové celé čísla.
    • V libvkd3d-utils bola rozšírená podpora API reflexie shaderov. Implementované sú rozhrania ID3D10ShaderReflection, ID3D10ShaderReflection1 a ID3D11ShaderReflection, ako aj väčšina metód rozhraní ID3D12ShaderReflection a ID3D12ShaderReflectionType.
    • V vkd3d-compiler bola pridaná možnosť „—allow-half-globals“, a v libvkd3d-shader flag VKD3D_SHADER_COMPILE_OPTION_BACKCOMPAT_ALLOW_HALF_GLOBALS na kompiláciu globálnych premenných s typom „half“ do reprezentácie s typom „float“.
  • Bol vydaný DXVK 3.1, ktorý poskytuje implementáciu DXGI (DirectX Graphics Infrastructure), Direct3D 8, 9, 10 a 11, fungujúci prostredníctvom prevodu volaní na API Vulkan. Na použitie DXVK sú potrebné ovládače podporujúce API Vulkan 1.4, ako NVIDIA 575.51.02, Mesa AMD RADV 25.0, NVIDIA 25.1 a Intel ANV 25.1. DXVK sa môže použiť na spustenie 3D aplikácií a hier v Linuxe pomocou Wine a predstavuje výkonnejšiu alternatívu k implementáciám Direct3D zabudovaným do Wine, ktoré pracujú nad OpenGL.

    V novej verzii:

    • Pridaná podpora inkrementálneho prekresľovania v DXGI, implementovaná pomocou Vulkan rozšírenia VK_KHR_incremental_present, čo umožňuje aktualizovať na obrazovke iba zmenené oblasti. Nová funkcia vyriešila problémy s vykresľovaním vo VirtualDJ a rôznych herných spúšťačoch, ako je Ubisoft Connect.
    • Pridaná podpora na vytváranie pohľadov na objekty vykresľovania (render target view) priamo v pamäťových obložkách, čo vyriešilo problémy s artefaktmi pri vykresľovaní oblakov v niektorých hrách na Frostbite engine, ako je Battlefield 3.
    • Implementované načítanie knižníc na podporu špecifických rozšírení pre GPU Intel (vendor extensions).
    • Vyriešené problémy v hrách Mabinogi, The Witcher 1, Ghost Recon Breakpoint, Mirrors Edge, RaceRoom Racing Experience.
  • Bol vydaný projekt D7VK 2.2, ktorý rozvíja implementáciu grafických API Direct3D 3, 5, 6 a 7, ktoré navrhla spoločnosť Microsoft v rokoch 1996, 1997, 1998 a 1999. D7VK funguje prostredníctvom prevodu volaní na API Vulkan a umožňuje pomocou Wine spúšťať v Linuxe retro hry viazané na API Direct3D 3, 5, 6 a 7. Kód projektu je napísaný v jazyku C++ a je distribuovaný pod licenciou Zlib. Ako základ bola použitá kódová základňa backendu d3d9 z projektu DXVK — D7VK prevádza API Direct3D 3, 5, 6 a 7 na volania Direct3D 9, ktoré sú následne prevedené na API Vulkan. Vývojár nemá v úmysle zahrnúť D7VK do súboru DXVK, ako to bolo s implementáciami Direct3D 8 a Direct3D 9 nad Vulkanom.

    V novej verzii bol prechod na prácu na základe vydania DXVK 3.1, prepracovaná kontrola vykonateľných bufferov D3D3 a počítanie referencií (refcounting) pre zariadenia D3D3, zlepšené spracovanie textúr pre D3D5/3. Boli vykonané opravy zlepšujúce podporu hier: Palantírs in The Lord of the Rings, Resident Evil 2 a Frogger.

    Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster