Újra belökné a linuxos játékokat a Valve
Nagyon érett már a linuxos-windowsos átjárást hozó kompatibilitási megoldások fejlettsége, a Valve most arra tett kísérletet, hogy ezeket (központtban a Wine-nal) olyan minőségi szintre hozza, ami már a népszerű játékok alá is megfelel. Izgalmas kísérlet, de a cég nagyon hisz benne.
A Valve nagyon régóta viszi a linuxos játékosok zászlóját, a cég hosszútávú eltökélt szándéka, hogy ezt a platformot is elsőrendű gaming operációs rendszerré emelje. Ezt szolgálta korábban a SteamOS próbálkozás is, és ezt célozza az új, egyelőre bétás megoldás is: a Steam for Linux és a Steam Play egy új kompatibilitási réteget kap, amellyel a nem portolt Windows-játékok módosítás nélkül futnak majd Linuxon. Lássuk a részleteket!
Érett alapokon
Az új projekt a blogbejegyzés szerint két évvel ezelőtt indult, azzal a céllal, hogy a hatalmas Steam-katalógust elérhetővé tegye Linuxon. Ez sok ezer olyan címet jelent, amelyek fejlesztése már régen, akár egy évtizede lejárt, a kiadó pedig nem költ arra, hogy portolja a játékot Linuxra. A fejlesztés neve Proton, a gyakorlatban ez a jól ismert Wine kompatibilitási réteg módosított, finomított, más kompatibilitási eszközökkel integrált változata, amely a várakozások szerint sokkal jobb élményt nyújt, mint a nyers eredeti.
A fejlesztés lényege: a kompatibilitási keretrendszernek köszönhetően a Windowsra készült játékok módosítás nélkül telepíthetőek és futtathatóak Linuxon, közvetlenül a Steam kliensből, natív Steamworks és OpenVR támogatással. A DirectX 11 és 12 által kínált grafikus funkciók implementációjáért a Vulkan felel, amely jó kompatibilitást és szerény teljesítménycsökkenést hoz a készítők szerint.
A Wine vajon mi?
A Proton több erőfeszítés eredője. Egyrészt a Valve erőforrást (értsd: fejlesztőt és pénzt) áldozott a Wine projektre, a CodeWeaversszel közösen. Ezen túl a vkd3d (DX12), a DXVK (DX11) és a wined3d (DX9 és DX11) kompatibilitási rétegek fejlesztésével is foglalkozott a cég, az AMD-vel, az Intellel, az Nvidiával és a Vulkan API-ért felelős Khronos-szal együttműködésben. A többszálú végrehajtást javító esync patch-csomag továbbcsiszolására is jutott erőforrás. A Proton alapját tehát minden tekintetben ezen a nyílt forráskódú, meglévő projektek képezik, a Valve azonban vette az erőfeszítést ezek finomítására és összecsiszolására. Az eredmény a Proton, amely (a béta állapot után) hivatalosan támogatott megoldásként léphet a reflektorfénybe.
A Valve a szabad szoftveres közösség normáinak megfelelően a módosításokat átadta az eredeti projekteknek, így ha jónak látják, szabadon beemelhetik azokat a többi felhasználójuk számára is.
A Proton teljesen nyílt forráskódú és elérhető a GitHub felületén. A kódban nem csak nézelődni lehet, haladó felhasználók készíthetnek módosított lokális verziót belőle, és a Steam befogható arra, hogy ezzel az egyedi verzióval futtassa a kiválasztott játékot. Ezzel megnyílik a lehetőség, hogy a DRM-mel védett játékokat azért lehessen szabad szoftveres közegben tesztelni, a közösségi patcheket pedig a fejlesztők nagyon szívesen befogadják.
Tisztább, szárazabb érzés
A munka jelentőségét a felhasználóbarát apróságok adják, amelyek a "működik" és a "jól működik" közötti gátat jelentik: rendesen támogatott a teljes kijelzős megjelenítés, a játékokat a rendszer tetszőleges képernyőn tudja megjeleníteni (a fő képernyő felbontásától függetlenül) és virtuális asztalok használata nélkül. Jobb a kontrollerek támogatása, a Steam kliens automatikusan felismeri a támogatott, csatlakoztatott egységeket és ezeket elérhetővé teszi a játékból. Illetve javult a többszálú végrehajtást használó játékok teljesítménye a sima Wine-hoz viszonyítva. A teljesítmény a Valve ígérete szerint nem azonos a Windows alatt elérttel, de a grafikus API fordításán túl nincs sebességkorlát, ez pedig (különösen a kicsit régebbi címek esetében) már szinte észrevehetetlen.
A Gitlab mint DevSecOps platform (x) Gyere el Radovan Baćović (Gitlab, Data Engineer) előadására a november 7-i DevOps Natives meetupon.
A Valve dolgozói a népszerűbb játékokat egyenként is tesztelik és javítgatják a felmerülő kompatibilitási hibákat, első körben 27 játék és program kapta meg a plecsnit, ezek közé egészen változatos címek is bekerültek, az első Doomtól a Warhammer 40k stratégiáig, a Quake-től a Star Wars: Battlefront 2-ig. A tervek szerint ahogy a Proton elhagyja a béta címkét, a listán található játékokat megvásárlásra is ajánlja majd a Steam kliens.
A tesztelés gyors ütemben zajlik, így ez a lista várhatóan gyorsan sokkal hosszabb lesz. A bevizsgált játékokat a rendszer kattintásra megvásárolhatóvá-telepíthetővé teszi, de a hozzáférést a többi, nem vizsgált játékhoz sem korlátozza: igény szerint a felhasználók tetszőleges, a jóváhagyott listán nem szereplő címeket is telepíthetnek a megfelelő kapcsoló átbillentésével - igaz, ezt csak haladó felhasználóknak javasolja a Valve. A bevizsgálásra lehet címeket jelölni, a közösség által kért népszerűbb játékok a tesztelő csapat prioritását élvezik majd.
A Proton a Valve szerint nem csak a meglévő katalógus játszhatóságában hoz majd újat, hanem az új játékok linuxos portját is meg szeretné könnyíteni.