Сегодня большинство Windows-игр отлично запускаются под Linux. Спасибо, Proton
Некоторые популярные игры, которые пока не внесены официально в белый список Steam для Linux, но получили много положительных отзывов в ProtonDB, то есть реально запускаются и хорошо работают
10 декабря 2020 года состоялся релиз долгожданной игры Cyberpunk 2077, а за день до этого вышла новая версия Proton 5.13-4 с поддержкой Cyberpunk 2077. То есть пользователи Linux смогли играть в Cyberpunk 2077 с первого же дня. Это наглядный пример, насколько великолепная ситуация сейчас с поддержкой игр на Linux-десктопах.
Если вам говорят, что Linux — отличная платформа для игр, то это уже не преувеличение! За такое положение вещей мы должны благодарить Proton.
Proton — это относительно новый инструмент, который выпустила компания Valve Software (официальный анонс от 22.08.2018 года). Он интегрирован со Steam Play, а его задача — максимально упростить запуск Windows-игр под Linux.
Хотя Proton интегрирован со Steam Play, но его можно собрать из исходников и использовать отдельно.
Под капотом Proton работают другие популярные инструменты, такие как кастомная версия Wine (бóльшую часть сделанных Valve модификаций приняли в основную ветку) и DXVK, которые в противном случае пришлось бы устанавливать и поддерживать самостоятельно. Наличие такого интегрированного решения значительно облегчает пользователям переход на Linux без необходимости изучать базовые системы и не теряя доступ к своей библиотеке игр.
Proton пока что находится на ранней стадии развития, поэтому поддержка неидеальна, но постепенно улучшается. Прогресс реально идёт. Например, Fallout 4 раньше работал с огромным количеством глюков, куча графики просто не подгружалась, а теперь уже можно играть более-менее нормально.
Опубликованный исходный код позволяет опытным пользователям изменять и настраивать Proton, например, использовать с конкретной игрой другую версию Wine. В реальности даже Steam поставляется с несколькими версиями Proton, которые запускаются с разными играми.
Steam также поддерживает работу с локальными установками Proton, поэтому никто не мешает вручную инсталлировать его на своей машине. Для этого нужно создать новую директорию в ~/.steam/root/compatibilitytools.d/
и поместить туда содержимое dist
, полученное после сборки из исходников. Затем команда make install
установит Proton внутри директории Steam для текущего пользователя. Корректная установка выглядит так:
compatibilitytools.d/my_proton/ ├── compatibilitytool.vdf ├── filelock.py ├── LICENSE ├── proton ├── proton_dist.tar ├── toolmanifest.vdf ├── user_settings.sample.py └── version
Остаётся перезагрузить Steam — и можно пользоваться! Если пройти в настройки Steam Play, то там в выпадающем списке инструментов для совместимости появится proton-localbuild
.
В базе данных ProtonDB накапливаются отчёты от геймеров, которые тестируют игры с Proton на Linux. В итоге выводится общая оценка, насколько хорошо работают игры.
Оценка игре выставляется по пятибалльной шкале:
- Платина: отлично работает из коробки
- Золото: отлично работает после твиков
- Серебро: работает с незначительными проблемами, но в целом запускается
- Бронза: работает, но часто вылетает или имеет проблемы, мешающие играть комфортно
- Неисправна: либо не запускается, либо принципиально неиграбельна
На данный момент в базу включено 109 984 отчёта о 16 754 играх. Вот как выглядит рейтинг 10 самых популярных:
- Counter-Strike: Global Offensive — золото
- Dota 2 — серебро
- PLAYERUNKNOWN’S BATTLEGROUNDS — неисправна
- Grand Theft Auto V — золото
- Team Fortress 2 — бронза
- Tom Clancy’s Rainbow Six Siege — неисправна
- Rust — бронза
- Rocket League — золото
- Apex Legends — бронза
- Football Manager 2021 — серебро
Из этой десятки самых популярных игр у трёх рейтинг «золото», у двух — серебро, у трёх — бронза, а две игры не запускаются или неиграбельны. То есть 50% из десятки топовых игр нормально запускаются под Linux. Если взять сотню самых популярных игр, то этот показатель составляет 80%. Таким образом, большинство игр действительно работают в линуксовой среде.
В базе ProtonDB для каждой игры опубликованы отзывы реальных тестеров. Указана подробная конфигурация его оборудования, версия Proton и детальный отзыв по пунктам, с указанием стабильности и производительности, звука, графики и других параметров. Здесь же геймеры могут найти советы и твики, как заставить игру нормально работать в той или иной конфигурации.
Steam Play официально поддерживает ограниченный список игр, которые официально совместимы с Linux через систему Proton — так называемый «белый список». Список не такой большой, но постоянно растёт. Судя по отчётам ProtonDB, значительное количество игр, не включённых в белый список, включая многие популярные тайтлы, тоже отлично работают под Linux.
Под Linux сегодня доступны Cyberpunk 2077, Red Dead Redemption 2, Death Stranding и многие другие игры. Вообще, сложно найти игру класса AAA, которая не запускается под Linux.
Под Linux есть даже шлемы виртуальной реальности. По крайней мере, Valve Index протестирован и гарантированно работает. Хотя говорят, что это единственный шлем с официальной поддержкой Linux. Однако другие шлемы типа HTC Vive или Vive Pro могут запускать игры под Linux через кроссплатформенный движок SteamVR.
Valve Index с полной поддержкой Linux
Нативно под Linux работает лишь несколько VR-игр, хотя в последнее время появляется всё больше. Но это вовсе не мешает. Дело в том, что среди Proton-совместимых тайтлов VR-игра скорее запустится под Linux, чем не-VR игра. И этих VR-игр десятки, а может и сотни.
Skyrim VR с модами. Источник: Patola
Вот Linux-совместимость самых популярных VR-игр, по рейтингам пользователей ProtonDB:
- Phasmophobia — золото
- VRChat — золото
- Elite Dangerous — золото
- Microsoft Flight Simulator — серебро
- Assetto Corsa — золото
- Beat Saber — платина
- 8-Bit Arena VR — нет отзывов
- Assetto Corsa Competizione — золото
- Tabletop Simulator — платина
- DiRT Rally 2.0 — платина
Не совсем понятно, по каким признакам ProtonDB составляет рейтинг популярности игр. Например, в нём отсутствует Half-Life: Alyx (релиз состоялся в марте 2020 года), которую называют самой революционной игрой в мире VR. Это первая адаптация культовой Half-Life для виртуальной реальности, которая при этом действительно устанавливает новые стандарты игровой разработки (см. видео ниже). В самом Steam она получила награду «VR-игра 2020 года». Багов под Linux не очень много, но достаточно для того, чтобы Valve пока не указывала факт поддержки Linux на официальной странице игры в Steam. Но она играбельна.
После Half-Life: Alyx начали появляться и другие сложные игры с глубокой физикой и мощной интерактивностью, такие как Karnage Chronicles (июль 2020) и The Wizard – Dark Times (июнь 2020).
«Физический рюкзак»: новая фишка, которую поддерживает всё больше VR-игр. Вы заводите руку за спину и «достаёте» рюкзак, в котором хранится инвентарь. Источник: Metro: Exodus
Так или иначе, но из десятки ProtonDB практически идеально запускаются почти все игры. Только по 8-Bit Arena VR нет отзывов, а у остальных рейтинги «платина» и «золото». Это удивительный результат, который является заслугой кроссплатформенного программного обеспечения SteamVR, с которым интегрирован Proton.
Дом SteamVR в виртуальной реальности
Справедливости ради, у SteamVR есть ряд известных багов под Linux. Например, не работает наголовная камера шлема Index и не срабатывает комбинация клавиш для скриншотов. Если бы SteamVR выпускался полностью с открытым исходным кодом, такие баги исправили моментально. К сожалению, остаётся только терпеливо ждать, когда их исправит Valve.
Для решения некоторых проблем разработаны утилиты SteamVR Utils — набор скриптов, улучшающий функциональность SteamVR на Linux, то есть исправляющий некорректное поведение в ряде ситуаций. Вот что приходится делать сообществу, когда разработчик долгое время не может запатчить баги.
Проект SteamVR официально стартовал в 2015 году, когда Valve создала программные интерфейсы OpenVR API для поддержки разнообразного VR-оборудования. Хотя основная часть SDK открыта, но сами драйверы остаются проприетарными. Это даже вынудило сообщество запустить альтернативный открытый проект Open Source Virtual Reality (OSVR). К сожалению, на данный момент его разработка приостановлена и даже сайт ушёл в офлайн. Зато вполне здравствует OpenXR (с реализацией Monado) — полностью открытая и свободная альтернатива проприетарным API от Valve. Последняя бета-версия SteamVR даже поддерживает OpenXR, наряду с нативными интерфейсами OpenVR. На самом деле опенсорсные разработки в мире VR/AR идут полным ходом. Например, можно упомянуть библиотеку XRDesktop, которая реализует в виртуальной реальности традиционные десктопные интерфейсы Linux. Поддерживается интеграция с существующими оконными менеджерами.
XRDesktop: десктопный интерфейс Linux в виртуальной реальности. Источник: Collabora
А также мультиплатформенную опенсорсную утилиту OVR Advanced Settings, которая бесплатно доступна в Steam. Очень полезный инструмент для детальной настройки VR-конфигурации.
Подводя итог. На практике под Linux можно использовать практически любое VR-устройство. Для этого нужно пойти в Steam и установить программу SteamVR.
Казалось бы, игры — что-то несерьёзное, не имеющее большого значения. Но это не так. На самом деле удобство и комфорт работы на настольном компьютере под Linux во многом зависит от того, какие игры здесь доступны и насколько комфортно в них играть. Поэтому так важно, чтобы под Linux выходили драйверы для последних видеокарт и они хорошо работали. То же самое касается самих игр, особенно популярных.
Игры имеют огромное, если не определяющее значение для популярности настольных дистрибутивов Linux. Игры вообще имеют кардинальное значение, в принципе. Давайте немножко пофантазируем. Представьте, что какая-то мегапопулярная игра выйдет эксклюзивно под Linux. Как думаете, что произойдёт на мировом рынке операционных систем? Насколько изменится соотношение Windows и Linux? Да многие подростки просто ради этой игры снесут Windows к чертям и поставят Linux, почему нет, если в свободной ОС поддерживаются все те же возможности, что и в Windows. Этот мысленный эксперимент демонстрирует, насколько важны игры для принятия новой операционной системы.
Вот почему система Proton для запуска игр под Linux — настолько важный проект. Будем надеяться, что Valve не забросит его.
Если сравнить количество доступных игр под Linux хотя бы десятилетие назад и сегодня, то это просто небо и земля, абсолютно иной мир. Не говоря уже о виртуальной реальности, которая отлично поддерживается в Proton. Никто даже мечтать не мог о таком невероятном будущем.
На правах рекламы
Серверы для игровых серверов и любых других задач — это про наши эпичные! Все серверы защищены от DDoS-атак. Лучше один раз попробовать.