Якщо у вас є Steam Deck і вам цікаво, як він грає в ігри на базі Windows на Linux, тоді ви потрапили в потрібне місце!
Якщо у вас є a Steam Deck, ви, напевно, вражені тим, наскільки добре працює багато ігор. Це не тільки кишеньковий пристрій, але й кишеньковий пристрій, на якому працює Linux. Незважаючи на погану репутацію ОС щодо запуску відеоігор, такі назви AAA, як Кіберпанк: 2077 і Grand Theft Auto: V дуже добре працюють на Steam Deck. Це завдяки Proton, рівню сумісності, розробленому Valve і CodeWeavers.
Що таке Протон? Як це працює?
Proton насправді на кілька років старший за Steam Deck, який вперше вийшов у серпні 2018 року. У той час Valve сказав, що «ігри для Windows, у яких наразі немає доступної версії Linux, тепер можуть бути інстальовано та запущено безпосередньо з клієнта Linux Steam разом із рідними Steamworks та OpenVR підтримка».
До Proton геймери на Linux часто потребували власних портів ігор для своїх систем або були змушені покладатися на рівні сумісності сторонніх розробників, такі як Wine. Wine працює досить добре, але часто потребує багато налаштувань, щоб все працювало ідеально, з такими іграми, як
DOOM (2016) грати з невеликою роботою.Тут на допомогу приходить Протон. Це усуває необхідність будь-якої роботи з боку кінцевого користувача. Ідея полягає в тому, що ви можете просто встановити гру та грати в неї так, ніби це рідний порт, і кінцевому користувачеві не потрібно знати, що відбувається під капотом.
Proton працює в поєднанні з модифікованою версією Wine. Wine працює як рівень, що перетворює виклики Windows API на виклики POSIX (Portable Operating System Interface). одночасно відтворюючи структуру каталогів Windows і надаючи альтернативні реалізації системи послуги. Wine не використовує ніякої емуляції чи віртуалізації для виконання двійкових файлів Windows.
Інша частина Proton, яка є важливою для рівняння ігор, — це його здатність перекладати виклики Direct3D API. Він включає DXVK, заснований на Vulkan рівень перекладу для Direct3D 9, 10 і 11, з підтримкою Direct3D 12, що надається через VKD3D-Proton, розгалуження VKD3D від Wine.
Що стосується Direct3D, то це графічний API для машин Windows і є частиною DirectX, а Proton по суті інтерпретує ці виклики API Direct3D. Proton створює власну версію цієї бібліотеки, з якою ігри можуть взаємодіяти. Потім Proton внутрішньо направляє ці виклики до API Vulkan, дозволяючи грі працювати так, ніби вона працює на машині Windows.
Протон є повністю відкритим кодом, який, за словами Valve, «надасть досвідченим користувачам можливість змінювати Proton». Найпопулярніша кастомна збірка Proton Протон-ГЕ, який містить найновіші експериментальні зміни Proton. Він містить інші патчі та функції, яких немає у звичайного Proton.
Майбутнє Proton
Над «Протоном» завжди можна працювати та вдосконалювати його, але в даному вигляді це вже зрілий і розроблений проект. З величезними назвами, які вже можна грати через нього, геймери не можуть побажати більше. Існують деякі проблеми сумісності та графічні збої, які виникають, але загалом гру через Proton неможливо відрізнити від гри в нативній системі Windows.
Одна річ, на якій Valve цілком може зосередитися далі, це перебазування версії Wine, на якій базується Proton, до більш останнього випуску. Proton відстає від останньої офіційної версії Wine на кілька випусків, і проекти спільноти з відкритим кодом, такі як Proton-GE, мають на меті додати додаткові функції та перебазувати новіші версії Wine.
Звичайно, кінцевою метою Valve є стабільність і сумісність, тому вона включає не лише всі ці зміни, яких вдалося досягти таким проектам, як Proton-GE. Якщо ви досвідчений користувач, то ніщо не заважає вам замість цього встановити та використовувати Proton-GE, але для повсякденного гравця стабільний Proton безперечно є кращим варіантом.