Решил написать небольшую статью, о всех тяготах и лишениях линукс гейминга, а заодно расписать процесс установки игр с парочкой приемов упрощающих жизнь. По крайней мере таков был изначальный замысел, сказать пару слов про историю и перейти сразу к делу. Но история сказала «парой слов не обойдешься!», поэтому я удивленный тем, что история разговаривает и еще более удивленный 7 страницами текста с размером шрифта 11 в Goole Docs распилил эту статью на две части. Первая будет посвящена соответственно истории и теории(ну и немного моим мнением и опытом.), а вот вторая будет уже более практическая, с различными приемами и выводом.
Возможно кто-то сможет подчерпнуть для себя полезную информацию, но с большей вероятностью вы забрели сюда просто, чтобы узнать, как живется по ту сторону виндузевых 96%.
Ага, примерно такая вероятность. (хотя это статистика тех, у кого установлен стим). Глобально линукс имеет большую долю, а на серверах и мобильных устройствах и вовсе лидирует.
Почему я не включил маковские 3%? Ну, во-первых, потому, что это в основном зарубежные 3%, а во-вторых хоть эта статья посвящена линуксу, частично она актуальная и для MacOS.
Cправедливости ради, эта статистика не до конца объективна, она не учитывает тех, у кого установлены 2 системы и лично мне стим на линуксе всего раз предложил отправить статистику даже если я не запускал винду месяцами, зато стоит только запустить винду и предложение отправить данные тут же появляется. Вроде как даже была новость, что это не фича, а баг.
Cкорее всего вам больше хочется узнать, что за нелегкая могла привести к такому выражению как “Линукс гейминг”, а нелегкая не такая уж и… нелегкая… ироничный Свист-ХА! Мне нравится линукс в текущем его состоянии. Пользовательский интерфейс десктопных дистрибутивов сегодня достаточно юзерфрендли (особенно есть взять какую-нибудь elementaryOS, после которой винда покажется дремучим лесом, особенно те помойки 8 и 10(сразу стоит оговорится, не считаю десятку плохой системой, однако неудачное совмещение старого и нового интерфейсов превращает ее в свалку с двумя видеоплеерами, двумя браузерами, двумя панелями инструментов и.т.д.)).
Куда уж элементарнее?
Однако помимо достаточно простого интерфейса, для опытных пользователей открыта дорога в кастомизацию. Линукс достаточно гибок, а графические окружения в большинстве своем позволяют настроить свой внешний вид так как душе угодно. Лично я считаю это идеальным балансом для операционной системы. И хоть винда по сути тоже может быть кастомизирована, кастомизации она поддается не так охотно, как линукс.
Linux Manjaro напирмер предлагает в пару кликов менять расположение панелей и вид основного меню. Очень удобно.
Именно поэтому, я предпочитаю работать в линуксе, мне в нем банально комфортнее. Ну а там, где работа, почему бы и не быть развлечению, тем более, что дядюшка Гейб в 2012, а потом и в 2018 сделал линукс сообществу невероятные и неожиданные подарки. Ну то есть стим машины с линуксом на борту не выстрелили в итоге, но наследие осталось и живо до сих пор. Что же это за подарки такие? Для ответа на этот вопрос требуется углубится в … на самом деле не очень-то и глубокую историю… ироничный Свист-ХА! №2… Простите это больше не повторится.
От темных времен до Steam
Итак, 2011 год. Из возможностей запустить игру на линуксе имеется только wine и его платный брат близнец Crossover(Правда оба не умели в DirectX11). А от Valve появляется информация, что помимо продажи игр компания также займется продажей железа. Гейб Ньюэлл дает интервью ресурсу Penny arcade:
Ну, если нам нужно будет продавать оборудование, мы будем это делать. У нас нет причин полагать, что у нас это получится, скорее мы хотим продолжать представлять миру инновации, и если единственным способом реализации таких проектов будет являться разработка и продажа оборудования напрямую, мы будем это делать. Это, конечно, не основная идея, которая нас занимает; мы бы предпочли, чтобы оборудование выпускали игроки аппаратного рынка, которые уже имеют большой опыт в производстве и распространении оборудования.
Гейб Ньюэлл
Генеральный директор Valve
Кстати сама статья с Penny arcade была удалена или перемещена, т.к. все ссылки на эту статью ведут к ошибке 404. Однако, как минимум частично это интервью можно найти на сторонних ресурсах.
Появляется слух, что на GDC2012 валв анонсирует steam machine (известным тогда еще под рабочим названием steam box), однако представитель valve заявляет, что подобных планов пока нет. В апреле Валв начинает поиск инженера для работы над дизайном железного решения, а уже в июле анонсирует порт своего стим клиента и основного движка компании, source, на linux. Тогда же Гейб открыто критикует Windows 8:
Я считаю, что Windows 8 — это, своего рода, катастрофа для всех в сфере ПК. Я думаю, мы потеряем нескольких ведущих производителей компьютеров. Они уйдут с рынка. Я думаю, что многие люди потерпят убытки. Если мои предположения оправдаются, будет неплохо иметь альтернативу, чтобы отгородиться от такого хода дел.
Гейб Ньюэлл о Windows 8
Катастрофой w8 в итоге не оказался. Особенно забавно это читать сегодня когда игры от Microsoft не только выходят на пк, но еще и появляются в самом Стиме, а сам магазин Windows не то, что не обрел статус монополии (а опасения Гейба были именно об этом, что Microsoft усложнит жизнь сторонним магазинам), но даже не получил практически никакой популярности.
Вообще планы у Валв были глобальные. Они хотели подвинуть не только Windows, но и классические консоли будучи уверены в том, что в будущем пк станет основной платформой для игр. И хоть мы знаем, что этим планам в итоге не суждено будет сбыться, некое пророческое видение в этом и правда было. ПК платформа сегодня действительно растет. Стим машины правда это не спасло и их ждал очевидный провал, ведь количество портов игр на линукс поначалу было небольшим, а обещанная возможность запускать любую win32 игру появилась сравнительно недавно, когда паровые машины уже не подавали признаков жизни. Однако железо нас, не интересует. А если все-же да, подробнее можно почитать, например, на странице Википедии.
В ноябре 2012 состоялся запуск закрытого бета-теста Steam для линукса, а также одной игры на движке Source. Этой игрой оказалась Team Fortress 2, однако до самого теста новостные сайты предполагали, что это будет Left 4 Dead 2. Вскоре после закрытого бета теста запустился и открытый.
Это огромная веха в развитии компьютерных игр. Пользователи Steam просят нас поддержать игры на Linux. Мы рады предоставить разнообразные развлечения и наше сообщество пользователей на этой открытой, удобной для клиентов платформе.
Гейб Ньюэлл о запуске Steam на Linux
Возможно упоминания стоит и дистрибутив основанный на Linux Ubuntu который создали для Стим машин, а также выкатили в открытый доступ всем желающим. Но если честно мало кто понял зачем нужно ставить отдельный урезаный дистрибутив, если стим можно поставить себе без переустановки системы. Отчего он умер даже, не успев пошуметь.
-Но доктор, SteamOS все еще доступен для загрузки прям на сайте стима!
-Печально, когда дистрибутивы уходят от нас еще совсем бета, но этот мир был слишком жесток и несправедлив для него. Покойся с миром SteamOS.
Логотип SteamOS
Отличительной особенностью дистрибутива была возможность отказаться от привычного ПК пользователям десктоп окружения в пользу консольного Big Picture.
Таким образом стим появился на линуксе, да не просто появился, Valve честно перенесли туда свои игры, ну а за ним потянулись и другие. Правда в отличие от портов от Valve в основном это были настолько дешевые порты, что ресурсов хватало только сделать ретранслятор команд windows версии на оболочку линукса. Подобные порты отличались низкой производительностью, но они работали и это уже было гораздо больше чем ничего.
Ну то есть чего конечно было, было Вино (Wine — wine is not emulator(wine это не эмулятор)), но игры запущенные на нем отличались такой же низкой производительностью и нередко требовали изрядно потанцевать с бубном перед тем как это нечто получало возможность хотя бы запускаться. Конечно были специальные программы для автоматизации процесса, например Play on Linux, однако с большой долей вероятности танцы с бубном никуда не уходили, а просто переходили от командной строки в GUI (графический интерфейс).
А тут стим… нажал кнопку установить потом играть. Правда таких игр по пальцам можно было пересчитать, нет счет их достаточно быстро перешел на тысячи, но вы знаете темную зону стима, она… на любителя. Но вот что удивительно подобными портами линукс сообщество порадовали не только инди разработчики, даже некоторые ААА тайтлы были перенесены на эту платформу. На данный момент, например, официально портирована вся трилогия современной Лары Крофт. Другие студии правда, часто останавливались на порте одной части франшизы, например, CD Project портировала только второго ведьмака, хотя обещания третьей части вроде как были. Это был большой шаг для линукса, официальные порты на линукс, не поделки студентов на коленке, не копии игр, собранных на их-же опенсурсных движках типа квейка или дума, ну и не java версия minecraft и то, только потому, что ява мультиплатформенная сама по себе, а официальные порты AAA игр.
Cпасибо за них стоит сказать в том числе команде Feral Interactive блягодаря их стараниям на линуксе появились такие игры как: Alien: Isolation, Company of Heroes, Deus Ex: Mankind Divided, DiRT Rally, DiRT 4, Empire: Total War, F1™ 2015, F1 2017, GRID Autosport, Hitman, Life is Strange, Life is Strange: Before the Storm, Life is Strange 2, Mad Max, Medieval II: Total War, Middle-earth: Shadow of Mordor, Tomb Raider, Rise of the Tomb Raider, Shadow of the Tomb Raider, Total War Saga: Thrones of Britannia, Total War: SHOGUN 2, Total War: Shogun 2 — Fall of the Samurai, Total War: WARHAMMER, Total War: WARHAMMER II, Total War: THREE KINGDOMS, XCOM: Enemy Unknown, XCOM 2, Warhammer 40,000: Dawn of War II, Warhammer 40,000: Dawn of War II — Chaos Rising, Warhammer 40,000: Dawn of War II — Retribution, Warhammer 40,000: Dawn of War III.
Логотип Feral Interactive
Но я уже точно говорил о качестве портов… возможно второго упоминания ситуация вокруг них не достойна. Да в них был низкий фпс по сравнению с вин версией, но это было играбельно и это не требовало танцев с бубном. Тем более некоторые игры шли очень хорошо например Torchlight 2 или первая часть Divinity: Original Sin.
Однако нельзя сказать, что в это время я активно занимался геймингом на линуксе. Пару игр поставить, еще пару протестировать и все это в основном из любопытства. А вот дальнейшее развитие и следующий подарок от Гейба изменили многое.
DXVK: да придет спаситель.
Вообще такой резкий переход статьи конечно смотрелся бы отлично. Но нельзя не отметить, что пускай дальше и будет описываться довольно большой прорыв в контексте линукс гейминга, достойным упоминания будет и то, что и до этого момента работа велась. Нвидия начала активнее обновлять и по-настоящему улучшать драйвера на линуксе, АМД в конце концов написала нормальные драйвера, правда насколько я знаю сделала это относительно недавно. Разработчики дистрибутивов работали над тем, чтобы установить эти драйвера было как никогда просто. Сегодня, чтобы установить свежие (может и не всегда последние, очень зависит от того какой способ тестирования и доставки пакетов до пользователя выбрал разработчик дистрибутива) драйвера видеокарт не требуется командная строка или даже необходимость лезть на официальный сайт и скачивать установочник. В линуксе это можно сделать через интерфейс.
Вообще, забавно несмотря на стереотипы о командной строке в линуксе как единственном способе управления системой, в большинстве современных дистрибутивах многое реализовано через графический интерфейс, а также есть годный магазин приложений в котором есть если не все, то большинство нужных программ, а командная строка просто помогает ускорить некоторые процессы, ну и дает те возможности, которым в GUI и делать то нечего. Т.е. выполняет такую же роль, как и cmd (ну и его более продвинутая версия PowerShell) в Windows.
Просто нажал установить, а после перезагрузил систему и готово. Даже на сайт нвидии заходить не надо.
И что еще важнее, нвидия не будет донимать вопросами о скачивании обновлений драйверов или их долгой установкой. В линуксе пакеты драйверов будут обновляться вместе с системой. При этом установка нового драйвера никак не будет мешать работе системы, ведь начнет использоваться он только после перезагрузки. Это одно из главных преимуществ линукса для меня, ему не нужны тонны googleupdater, mailupdater yandexupdater, vasyansoftupdater, обновление системы также скачивает новые пакеты программ и драйверов из различных в том числе и подключенных пользователем источников. Но что-то я отвлекся.
В 2015-2016 годах произошло два важных события, которые и стали виновниками того, о чем будет написано далее.
29 июля 2015 года состоялся релиз DirectX 12, а 16 февряля 2016 на свет появился Vulkan. Это новые графические API призванные улучшить работу с железом, снизить нагрузку на процессор и улучшить многопоточность, что в свою очередь должно было привести к более высокой производительности, а так-же добавить новые возможности такие как трассировка лучей. Однако если Dx12 поддерживает только Windows 10(по крайней мере так задумывалось изначально, вроде как некоторую совместимость со старыми системами они в итоге реализовали), то Vulkan работает и на w7, и на w8, и на w10, и на Linux, и на Android и в принципе не имеет каких-то эксклюзивных ограничений. Собственно, поддержка вулканом линукса, а также его кроссплатформенность и стали виновниками сегодняшней ситуации.
Итак, на сцену выходит проект vkd3d, а также DXVK и D9VK (последние два в конце 2019 года объединились в один проект). Все они нацелены на реализацию трансляций вызовов DirectX в API Vulkan. Если без долгих и сложных объяснений эти проекты, улучшают совместимость и производительность игр, запущенных под вайном. И говоря, улучшают совместимость и производительность, я имею ввиду, существенно. Запуск солидного количества игр стал возможен в принципе, да еще и без костылей, да еще и с нормальным фпс и без артефактов. В случае с vkd3d которая направлена на трансляцию запросов от DirectX 12 потери фпс могут быть и вовсе незначительными. Однако DXVK (DirectX 9-11) не все так гладко, потери могут составлять 10-15 фпс, но даже это отличный результат.
The Elder Scrolls: Online запущенный без DXVK и с ним. Fps написан в левом нижнем углу под чатом. Я думаю комментарии тут не нужны.
Но не меньшим, событием стал упомянутый мной ранее второй подарок линуксоидам от Гейба. Им стал Proton.
Proton — средство запуска win32 игр основанная на wine и всех его наработках (vkd3d, dxvk), а также собственных правках, и интегрированная в Steam. Запустился в 2018 году в качестве беты, изначально позволял запускать только небольшой протестированный список игр, однако достаточно быстро оброс всеми полезными функциями, такими как запуск любой игры из стимовской библиотеки, добавление сторонних .exe с последующим запуском через proton и выбор версии proton отдельно для каждой игры.
Стоит ли говорить, что запуск протона разделил линукс геминг на до и после? Исходя из данных ProtonDB на момент написания статьи через линуксовый стим можно запустить 11 024 игры. Правда 3 тысячи игр имеют статус Broken (т.е. не запускаются). Да, в большинстве своем просто нажав установить, а потом играть. GTA5, Ведьмак 3, Monster Hunter: world, Скайрим, Assassin's Creed Odyssey, Doom, Kingdom come: deliverance и многое другое теперь запускаются без костылей, да и костыли стали довольно лояльными(например применить небольшую команду в Divinity OS 2 (игра работает без проблем, но лаунчер обновленной версии не запускается и если запускать игру в обход лаунчера то все будет хорошо), или например установить сертификат для того, чтобы онлайн в Dirt Rally 2.0 заработал) Более того, все эти решения линукс геймеры собирают в ProtonDB, так что зачастую и думать не нужно, если это можно запустить, там написано как.
Минутка офигительных историй. Один раз вышла забавная ситуация. Life is Strange упорно отказывалась запускаться на винде ругаясь на библиотеки PhysX. При этом решения в интернете были максимально противоречивы. Одним помогло одно, другим другое, кому-то не помогло ничего. Поэтому я решил «Пфф… на линуксе пройду» и прошел.
Конечно ложкой дегтя является то, что в лучшем случае фпс будет незначительно ниже, например, если игра уже работает на Вулкане или DirectX 12. Но это запускается и работает, и даже не требует выкручивать графику на минимум, чтобы быть хотя бы играбельным(и то, раньше и это давало гарантий). И даже более того, новые версии протона регулярно выходят (в основном они привязаны к появлению новой версии wine) и за чуть больше года было решено много проблем. Например, начал работать physX и Hairworks, правда последний все также становится причиной большой потери фпс, что для ситуации, когда фпс и без того теряется из-за запуска под линуксом не очень хорошо.
Правда есть аспекты, которые не позволяют игре запустится, даже если потенциально запустить игру через протон возможность есть, но об этом подробнее в более практической части статьи. Заодно, ради чистоты эксперимента я решил установить чистую и незнакомую для себя систему и с нуля настроить игры на ней. Ну и расписать полезные ресурсы и главных врагов линукс гейминга, а также расписать парочку приемов, упрощающих жизнь. Вывод разумеется тоже плавно перекочевал во вторую часть.
Лучшие комментарии
Поздравляю с дебютом.
Позволю себе дополнить, что MacOS построен на ядре Linux. Поэтому частично актуально и для него.
Массавая миграция с Windows на Linux не происходит лишь по той причине, что не все знают о существовании целой армии дистирубутивов базирующихся на ядре Linux (хотя тех, кто об этом знают, может именно количество разнообразия отпугнуть) и остаются на альтернативной Windows. Да, именно так и никак иначе, ведь UNIX базированных систем очень много и на их фоне именно Windows выглядит как альтернативная система (хоть и доминирующая на рынке ПК для обычных потребителей)! Ведь у многих производителей железа связаны руки и ноги договорами с Microsoft и они не имеют права установки иного ПО на свои готовые решения.
Кроме этого из-за отсутствия альтернативного ПО для некоторых задач. Ну и не последнюю роль в этом списке занимают игры и всё что с ними связано, но и тут Linux радует в последнее время.
И что самое главное, многие думают, что Linux создано только для слабых ПК и на прокаченом железе не сможет себя раскрыть…
Глупцы!
Артём КирневОчень рад, что ты будешь писать еще)
P.S.
И за что я люблю линукс, есть много способов еще сильнее облегчить себе жизнь и повысить фпс при свежей установке. При последней переустановке системы, я пользовался этой статьей, собирающей все лучшие из них.
Надеюсь тебе что-то поможет)
Будет шпаргалкой или даже что-то новое подскажет)
Потому что, лично я очень удивился, когда узнал, что для использования ядра 5.7 мне не обязательно пользоваться сборками, типа arch и manjaro, ведь и на linux mint, можно в две команды прыгнуть с ядра 5.4 на 5.7 без малейших проблем (хотя слышал, что у nvidia могут быть. Но у меня amd).
Думал, что 1000 рублей отдадут тебе, либо другому пользователю за разбор PS NOW И GAME PASS, ибо блоги годные!
Сам пользуюсь двумя системами (пока ещё), основная Manjaro KDE (для работы, просмотра страниц в интернет, видео, прослушивания музыки и прочего) и вторичная Windows 10 (для игр).
Manjaro нравится тем, что не стоит на месте и постоянно выходят обновления системы, драйверов и разного ПО.
Ещё радует возможность быстрой установки необходимого ПО, в один клик и не нужно шерстить интернет в поисках программ, потом скачивать, устанавливать и лицезреть на то, что совместимость отсутствует или данная версия оказалась кривой (кто не понял, это я о программах для Windows). В Linux такого нет, каждая версия ПО проходит 9 кругов ада (тестирование) прежде чем попасть к конечному пользователю.
А главное нет той самой принудиловки к установке обновлений, как это делает Windows 10. Где тебя ставят перед фактом, что наша система обновилась и хочешь ты того или нет, она будет перезагружена в любом случае. Сделаешь ты это сам, ведь нам это нужно или она (система) выполнит это за тебя, когда ты отлучишься на пару минут и забудешь сохранить документы, над которыми последние пару часов работал…
Да, у меня горит пониже спины от этого…
От полного перехода на Linux меня сдерживают лишь производители закрытого ПО для периферии ПК, а именно нет нормальных аналогов программ от Razer, Logitech и Со… Ну и есть некоторые игры, для запуска которых нужен запуск Anticheat программ, а данной возможности на Linux нет (пока ещё нет, знаю что работы в этом направлении ведутся).
Что касается игр на Linux, то тут ты прав, за последние пару лет возможность запуска и игры при практически той же кадровой частоте, что и на Windows не может не радовать. Да, приходится иногда пользоваться терминалом для установки библиотек или Wine Tricks для более расширенной настройки, Lutris (надеюсь расскажешь об этом зверьке), PortWINE и ждать новых версий Proton, чтобы насладиться (а иногда просто протестировать) игрой.
Ставлю плюс, надеюсь в следующей статье сможешь раскрыть все тонкости и настройки игр через разные вспомогательные программы.
Как всё же хорошо, что не все относятся к запуску игр на Linux с равнодушием.
Недавно перешел с Windows 10 на ноутбуке, который сначала использовался для работы, а сейчас — для отдыха и творчества.
Пробовал и elementaryOS, и Manjaro. Не зашли. Да и с первой неожиданно много проблем возникало.
Решил остановиться на «дистре» с окружением Mate, к которому давно питаю симпатии. Выбирал из Linux Mint и Ubuntu. Вторая понравилась больше.
А вообще с Linux познакомился еще в 2008-м году в институте. Первой системой была Mandriva.
Но бывший у меня тогда учебный ноутбук с одноядерным Celeron на 2ГГц не очень хорошо переваривал «кеды», поэтому пришлось искать что-то полегче. Даже и не помню, на чем в итоге остановился.
Единственный дистрибутив, который мне очень хорошо запомнился и полюбился, был Point Linux. Вот уж безотказная была система от российского разработчика. Жаль, что в итоге он ее забросил. В ней же я и познакомился с Mate, кстати.
Правда, я никогда не использовал Linux в качестве основной системы на «десктопе». И не задумывался даже об игровом его [Linux] использовании. Но, возможно, твой следующий блог, если он, конечно, будет, подтолкнет к прощанию с Windows 7, служившей мне верой и правдой несколько лет.
А если серъезно, со статьей вышла проблема. Только вводная часть в которой я объясняю чем отличаются дистрибутивы и какими способами можно установить программы на линукс вышла чуть меньше чем вся эта статья. Поэтому я сейчас думаю как все расмазать по практической части, чтобы не усыплять народ вываливанием тонн теории.
Ну еще с записью геймплея вышла проблема. Разные программы для записи упорно записывают видео в 30 фпс, хотя в настройках стоит 60 и игра ниже 60 не опускается. Пока не решил эту проблему.