Сегодня большинство Windows-игр отлично запускаются под Linux. Спасибо, Proton

Сегодня большинство Windows-игр отлично запускаются под Linux. Спасибо, Proton
Некоторые популярные игры, которые пока не внесены официально в белый список Steam для Linux, но получили много положительных отзывов в ProtonDB, то есть реально запускаются и хорошо работают

10 декабря 2020 года состоялся релиз долгожданной игры Cyberpunk 2077, а за день до этого вышла новая версия Proton 5.13-4 с поддержкой Cyberpunk 2077. То есть пользователи Linux смогли играть в Cyberpunk 2077 с первого же дня. Это наглядный пример, насколько великолепная ситуация сейчас с поддержкой игр на Linux-десктопах.

Если вам говорят, что Linux — отличная платформа для игр, то это уже не преувеличение! За такое положение вещей мы должны благодарить Proton.

Что такое 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?

В базе данных 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.

Состояние VR на 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, то есть исправляющий некорректное поведение в ряде ситуаций. Вот что приходится делать сообществу, когда разработчик долгое время не может запатчить баги.


Final Soccer VR

Проект 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-атак. Лучше один раз попробовать.


 

Источник

DXVK, Half-Life: Alyx, OpenVR, osvr, ProtonDB, Steam Play, SteamVR, Valve, Valve Index, wine, Протон

Читайте также