Kā darbojas Proton uz Steam Deck

Ja jums ir Steam Deck un jūs interesē, kā tas spēlē Windows spēles operētājsistēmā Linux, tad esat nonācis īstajā vietā!

Ja jums ir a Tvaika klājs, jūs droši vien esat pārsteigts, cik labi tajā darbojas daudzas spēles. Tas ir ne tikai plaukstdators, bet arī plaukstdators, kurā darbojas Linux. Neskatoties uz OS slikto reputāciju ar videospēļu palaišanu, AAA nosaukumi, piemēram, Kiberpanks: 2077 un Grand Theft Auto: V ļoti labi darbojas uz Steam Deck. Tas ir pateicoties Proton, saderības slānim, ko izstrādājuši Valve un CodeWeavers.

Kas ir protons? Kā tas darbojas?

Proton faktiski ir dažus gadus vecāks par Steam Deck, kas pirmo reizi tika izlaists 2018. gada augustā. Tajā laikā Valve teica, ka "tagad var būt Windows spēles, kurām pašlaik nav pieejama Linux versija instalēta un palaists tieši no Linux Steam klienta, komplektā ar vietējo Steamworks un OpenVR atbalsts."

Pirms Proton spēlētājiem, kas izmanto Linux, viņu sistēmām bieži bija nepieciešami vietējie spēļu porti, vai arī viņi bija spiesti paļauties uz trešo pušu saderības slāņiem, piemēram, Wine. Vīns darbojas diezgan labi, taču bieži vien bija nepieciešama liela pielāgošana, lai viss darbotos nevainojami, piemēram, spēlēm

DOOM (2016) spēlējama ar nelielu darbu.

Lūk, kur ienāk Protons. Tas novērš vajadzību pēc jebkāda darba gala lietotāja pusē. Ideja ir tāda, ka jūs varat vienkārši instalēt spēli un spēlēt to tā, it kā tā būtu vietējais ports, un gala lietotājam nekad nav jāzina, kas notiek zem pārsega.

Proton darbojas kopā ar modificētu Wine versiju. Wine darbojas kā slānis, kas pārvērš Windows API zvanus uz POSIX (portatīvās operētājsistēmas interfeisa) izsaukumiem vienlaikus arī atjaunojot Windows direktoriju struktūru un nodrošinot alternatīvas sistēmas ieviešanas pakalpojumus. Wine neizmanto nekādu emulāciju vai virtualizāciju, lai izpildītu Windows bināros failus.

Otra Proton daļa, kas ir būtiska spēļu vienādojumam, ir tā spēja tulkot Direct3D API zvanus. Tas ietver DXVK, uz Vulkan balstītu tulkošanas slāni Direct3D 9, 10 un 11, ar Direct3D 12 atbalstu, ko nodrošina VKD3D-Proton, VKD3D dakša no Wine.

Kas attiecas uz Direct3D, tas ir grafiskais API Windows iekārtām un ir daļa no DirectX, un Proton būtībā interpretē šos Direct3D API zvanus. Proton izveido savu šīs bibliotēkas versiju, ar kuru spēles var saskarties. Pēc tam Proton iekšēji novirza šos zvanus uz Vulkan API, ļaujot spēlei darboties tā, it kā tā būtu Windows datorā.

Protons ir pilnībā atvērts avots, kas, pēc Valve teiktā, "sniegs pieredzējušiem lietotājiem iespēju mainīt protonu". Populārākā pielāgotā Proton konstrukcija ir Protons-GE, kas ietver jaunākās Proton eksperimentālās izmaiņas. Tajā ir arī citi ielāpi un līdzekļi, ko parastajam Protonam nav.

Protona nākotne

Pie Proton vienmēr var strādāt un uzlabot, taču pašreizējā situācijā tas jau ir nobriedis un attīstīts projekts. Tā kā tajā jau var atskaņot milzīgus nosaukumus, spēlētāji nevar prasīt daudz vairāk. Joprojām ir dažas saderības problēmas un grafiskas kļūmes, kas parādās, taču kopumā Proton atskaņošanu nevar atšķirt no sākotnējās atskaņošanas operētājsistēmā Windows.

Viena lieta, uz ko Valve varētu pilnībā pievērsties, ir Wine versijas, uz kuras pamatā ir Proton, bāzes pārveidošana uz jaunāku versiju. Proton vairākos laidienos atpaliek no jaunākās oficiālās Wine versijas, un atvērtā pirmkoda kopienas projektu, piemēram, Proton-GE, mērķis ir pievienot papildu funkcijas un atjaunot jaunākās Wine versijas.

Protams, Valve galvenais mērķis ir stabilitāte un savietojamība, tāpēc tas neietver tikai visas šīs izmaiņas, kuras ir spējuši sasniegt tādi projekti kā Proton-GE. Ja esat spēcīgs lietotājs, nekas neliedz jums instalēt un lietot Proton-GE, taču ikdienas spēlētājiem stabils Proton noteikti ir labāks risinājums.