Spoločnosť Valve uviedla novú vetvu projektu Proton 4.11, ktorý je založený na vývoji projektu Wine a ktorého cieľom je zaručiť spustenie herných aplikácií vytvorených pre Windows a uvedených v katalógu Steam na systéme Linux. Vývoj projektu sa distribuuje na základe licencie BSD. Hneď ako budú pripravené, zmeny vyvinuté v Protone sa prenesú na pôvodné víno a súvisiace projekty, ako sú DXVK a vkd3d.
Proton vám umožňuje spúšťať hry, ktoré sú k dispozícii iba pre Windows, priamo na klientovi Steam Linux . Balík obsahuje implementáciu DirectX 10/11 (na základe DXVK) a 12 (na základe vkd3d), ktorá pracuje s prekladom volaní DirectX do Vulkan API, poskytuje vylepšenú podporu pre herné ovládače a možnosť používať režim celej obrazovky.
Hlavné novinky Protonu 4.11
S vydaním tejto novej pobočky, Proton prešiel na synchronizáciu so základným kódom Wine 4.11, z ktorého sa prenieslo viac ako 3300 zmien (predchádzajúca vetva bola založená na víne 4.2). 154 opráv Proton 4.2 bolo presunutých proti prúdu a je teraz zahrnutých v hlavnej časti Wine.
Ako hlavná novinka vývojári zdôrazňuje pridanie experimentálnej podpory synchronizačných primitívov na základe systémového volania futex (), čo znižuje zaťaženie procesora v porovnaní s esync.
Nová implementácia navyše rieši problémy s potrebou použitia špeciálneho nastavenia pre esync a možným vyčerpaním dostupných deskriptorov súborov.
Nášivky s držiakom indikátora FUTEX_WAIT_MULTIPLE potrebné pre Proton už boli prenesené na zahrnutie do hlavného jadra Linuxu a Glibc.
Pripravené zmeny ešte nie sú zahrnuté v hlavnom zložení jadra, preto je v súčasnosti potrebné nainštalovať špeciálne jadro s podporou týchto primitívov.
Tiež vrstva DXVK (implementácia DXGI, Direct3D 10 a Direct3D 11 nad API Vulkan) Bola aktualizovaná na novú verziu 1.3.
Zatiaľ čo pre D9VK (experimentálna implementácia Direct3D 9 na Vulkane) na verziu 0.13f. Ak chcete povoliť podporu D9VK v Protone, použite príznak PROTON_USE_D9VK.
Mnoho modulov Wine je teraz vytvorených ako súbory Windows PE, namiesto knižníc Linuxu. Ako bude práca v tejto oblasti postupovať, bude použitie PE pomáhať niektorým DRM a anti-cheat systémom.
Z ďalších zmien, ktoré vynikajú v tejto novej vetve:
- Poskytuje sa prenos aktuálnej obnovovacej frekvencie monitora do hier
- Vykonané opravy týkajúce sa spracovania kurzora myši a správy okien
- Opravené oneskorenia vstupu a problémy s podporou vibrácií pre joysticky, prejavujúce sa v niektorých hrách, najmä v hrách na engine Unity
- Pridaná podpora pre najnovšiu verziu OpenVR SDK
- Komponenty FAudio s implementáciou zvukovej knižnice DirectX (API XAudio2, X3DAudio, XAPO a XACT3) aktualizované na verziu 19.07
- Opravené problémy so sieťovým subsystémom v hrách v programe GameMaker
Pred prijatím opráv ventilov v hlavnom jadre systému Linux použiť namiesto esync futex (), musí byť nainštalované špeciálne jadro, ktoré podporuje fond synchronizácie vlákien implementované v súprave opráv fsync.
V Ubuntu 18.04 a 19.04 je možné použiť úložisko PPA s experimentálnymi linux-mfutex-ventilovými jadrami
Ktoré je možné pridať pomocou nasledujúcich príkazov:
sudo add-apt-repository ppa:valve-experimental/kernel-bionic -y sudo apt-get install linux-mfutex-valve
Ako aktivovať Proton v službe Steam?
Za týmto účelom Mali by otvoriť klienta Steam a kliknúť na Steam v ľavom hornom rohu a potom na Nastavenia.
V sekcii „Účet“ nájdete možnosť registrácie pre beta verziu. Ak to urobíte a prijmete, klient Steam sa zavrie a stiahne sa beta verzia (nová inštalácia).
Na konci a po prístupe k svojmu účtu sa vrátia na rovnakú cestu, aby overili, že už používajú Proton.