Хотел я написать о багах и разработчиках но подумал, что это никому не надо и напишу о том как я настроил себе удобное место для поиграть на linux.

Какое-то время назад купил проектор Epson EF-12. Вещь, просто класс. Это трехметровый телек, зависит от расстояния до стены. Проектор лазерный и потому цветопередача у него просто великолепная, я сравнивал с проектором Xgimi halo plus. Прям купил оба и один вернул в магазин. Когда видишь две картинки рядом, сразу понятно насколько лазерный проектор с 3lcd технологией превосходит аналоги. Другие лазерники стоят намного дороже и большие, выбрал этот. Причем обложка для статьи снята днем с прикрытой шторой, так что на деле изображение лучше. Но то дело вкуса во многом конечно.

Проблема этого проектора в том, что он "не игровой" то есть если его к компу подрубить по HDMI то input lag будет заметный, при этом играбельный, но у меня еще он и далеко от компа, так что нужен HDMI удлиннитель (в моем случае радио удлиннитель дает +20мс задержки, но это по словам китайцев-авторов), от которого задержка становится такой, что играть так совершенно невозможно. С коротким проводом вполне играбельно, но это в моем случае невозможно. На том я поначалу и успокоился, просто смотрел кино на большом телеке и был доволен. Но нашелся таки способ играть на неигровом проекторе. Это Steam Link, который программа, а не железка, просто ставится на андроиде из Goole Play.

У меня довольно много игр куплено по скидкам в стиме, иногда я играю на компьютере, но редко. По сути Steam Link это штука, которая делает то же самое, что Google Stadia или Geforce Now, но трансляция идет с вашего компьютера. После долгих выбираний настроек я таки выяснил как сделать чтобы задержки были не заметны и все стало удобно. Настройки самого Steam Link элементарны их там несколько всего, разберетесь, остальное нужное далее опишу.

Вопервых у меня стоит видеокарта Nvidia RTX 3080 16Gb. Она умеет захватывать картинку с помощью nvfbc или nvenc, что не грузит проц совсем. Это можно покрутить чтобы посмотреть, что быстрее. Это поддерживается в Steam Link. Во-вторых мне пришлось подключить проектор к одной локальной сети с компьютером. Причем я сделал это на 5Ггц wifi, так как проектор не имеет возможности проводного подключения. 5Ггц тут нужно чтобы wifi каналы были свободные от соседей. Причем по wifi у меня подключен к роутеру на 5ГГц только проектор, а все остальные устройства на 2.4Ггц чтобы у проектора был свободен весь канал и была скорость 100Мбит. Комп подключен к роутеру проводом. Этой скорости достаточно чтобы была идеальная картинка в играх. В противном случае она будет заметно портиться, но работать будет и поначалу я так и играл. Steam Link захватывает картинку видеокартой, жмет ее ей же и передает на клиента, там разжимает и показывает.

После этого я выбрал и купил себе геймпад. Это PS5 Dualsense. Начиная с ядра 5.12 в linux есть драйвер для этого геймпада. Сам геймпад подключается не к проектору (хотя так можно), а к ноутбуку по bluetooth чтобы вопервых были минимальные задержки, а во-вторых работала вибрация в геймпаде. Да, даже вибрация работает в linux. К ноутбуку же подключен звук. Steam Link умеет отдавать звук на клиент и захватывать геймпад на клиенте отдавая на комп, но это не нужно, чтобы не гонять все это по сети и не тратить канал портя картинку. Плюс лаг и косяки в звуке будут при плохой связи. Мало того Steam поддерживает интеграцию с этим геймпадом и если нажать кнопку PS на нем, он откроет Big Picture режим специально для телевизора-проектора. В итоге в настройках Steam Link был запрещен захват звука на сервере и геймпада на клиенте.

После того как все было подключено возникла одна большая проблема. Разрешения на ноутбуке и проекторе разные. Для того чтобы все транслировалось как надо пришлось заходить в настройки игры и делать ее запуск в окне с разрешением 1920х1080 как на проекторе. Тогда Steam Link понимает, что надо захватывать конкретное окно и показывает все идеально. Это делается только при первом запуске игры, не очень удобно конечно. В целом и не всегда надо, но в противном случае он будет запускать игры с нативным разрешением монитора моего ноута 2560х1600, что на проекторе не надо, а производительность ест.

Самого же разрешения в 1080p совершенно достаточно, я никаких огрехов не вижу, хотя долго думал до покупки, что надо 4k, так вот 4k нафиг не надо, большая часть фильмов в 1080p и игры тоже на него заточены примерно, в любом случае никаких "пикселей" на стене при проецировании не видать. Мало того при таком маленьком разрешении все красиво и при этом еще и производительность в играх просто так не жрется.

Сначала было подумал, что удобно будет иметь два монитора, один headless для стима и игр, который транслируется на проектор, второй с мышкой и рабочим софтом. Чтобы не возиться с настройками купил затычку для HDMI порта (5$), которая эмулирует телек с любым разрешением (Easydiy HDMI Dummy plug) и просто сделал чтобы все игры запускались на этом виртуальном мониторе. Но оказалось, что это неудобно. Было бы отлично, но есть масса проблем с фокусом окон, геймпадом и пр. Так как xserver не расчитан на то что на одном мониторе будут играть с геймпадом, а на втором работать с мышкой одновременно. Возиться слишком долго не захотел. Так что так и оставил автозапуск свернутого в системный лоток стима с одним монитором на ноутбуке, все прекрасно работает.

Что касается игр на linux в Steam, то у меня одна как-то не запустилась (Forza Horizon), больше никаких проблем не видел. Даже Cyberpunk 2077 прошел спокойно пару раз. Прошел не на этом сетапе подчеркну. Все работает отлично. Proton от Steam это конечно супер. Виндой я не пользуюсь уже лет пятнадцать, так что приятно, что игры стали так просто работать в linux, давно ни во что не играл.
В итоге процесс включения игры сейчас таков:
1. С пульта проектора запустить Steam Link клиент.
2. Выбрать геймпадом игру, так как Big Picture включится на ноутбуке сам и покажется на проекторе как только Steam Link подключится, а гемпад подключится к ноутбуку сам как только на нем нажата PS кнопка.
3. В первый раз приходится зайти в настройки игры и сделать чтобы запускалась в окне с разрешением 1920х1080.
4. Играть.

Нужно признать, что с некоторыми играми есть проблемы вроде зайти в настройки и выбрать нужное разрешение, или еще что то подобное, но мало совсем. В стиме сразу написано, что игра не поддерживает геймпад, и я не вожусь с ремаппингом кнопок и прочими выкрутасами, нет и нет. Но таких игр мало и я просто в них не играю или на ноуте играю иногда, это разного рода Tactical RPG, которых на консолях не бывает просто. Иногда подумываю купить трекпад и кейпад чтобы в этом сетапе играть в клавамышные игры развалясь в гамаке, но пока не надумал, не уверен, что это будет удобно, в этом смысле геймпад конечно удобно держать в руках.

Приставочные игры работают в таком сетапе идеально все, что я пробовал. С учетом того что полный сетап PS5 стоил когда то еще 70к (не слежу за ценами), а игры на нем намного дороже чем в Steam, этот сетап проектор+геймпад намного дешевле, а в моей библиотеке много купленных по скидке за 2-15Eur игр, такая коллекция на PS5 стоила бы целое состояние, плюс всегда можно добавить в Steam игру, установленную на стороне, если вы понимаете о чем я, но я этим никогда не пользовался. Ну, и да, ноут у меня топовый, тут не знаю какое надо железо чтобы так хорошо работало.

P.S. никаких сложных махинаций и трехкилометровых команд для игр на linux не будет, не надо это все больше, отдыхайте, игры это ведь развлечение. Но геймпад для меня что-то новое после клава-мыши, очень непривычно. Если же будет желание решать проблемы с двумя мониторами (не один где два вместе, а именно два отдельных в xorg.conf), то вот часть решений:
1. Если будет моргать Big Picture, уберите галочку в nvidia-settings у второго монитора Allow Flipping
2. Если будут артефакты в играх, поставьте галочку Force full composition pipeline там же в nvidia-settings
3. Если надо на втором мониторе отдельном чтобы геймпад работал то в /etc/udev/rules.d/99-joystick.rules надо написать KERNEL=="event*", ENV{ID_INPUT_JOYSTICK}=="?*", MODE:="0644". Иначе ему запрещено.
Но я оставил просто один монитор и не стал возиться до конца, там еще с фокусом окон проблемы возникли. Если найдете решение этого, пишите в комент. Два монитора все же приятнее чем один, так как не надо игры в оконный режим переводить и разрешение настраивать.


P.P.S Да, так как в ubuntu не нашлось иконки, которая бы показывала заряд контроллера, написал себе скриптик для этого.

UPDATE:

После совета в коментарии купил себе кабель HDMI 10м длинной, хорошо экранированный. В итоге сделал себе еще пару скриптиков для удобства использования при подключении по кабелю. Они переносят Big Picture окно на HDMI и звук на него переключают, а когда я это выключаю, переносят основное стим окно обратно и звук тоже, что бы на компе играть можно было сразу.
https://github.com/3DRaven/Steam_switcher
По кабелю удобнее то, что игры стартовать можно сразу в полноэкранном режиме и не возиться с их настройкой. Теперь включение игр происходит так:

  1. Нажать на Dualsense PS кнопку. Подождать. Откроется на компе основной стим.

  2. Нажать снова. Откроется Big Picture и перенесется на проектор.

  3. Играть.

Комментарии (16)


  1. rozenkreuser
    27.09.2022 12:33

    Подскажите, как играется elden ring, cyberpunk 2077 и gow на таком железе?


    1. 3draven
      27.09.2022 12:36

      Если не брать стимлинк и пр, а просто ноут, то я играл только в киберпанк, остальное не для меня. Играется идеально, без глюков. Если надо именно на проекторе и геймпаде, могу снова скачать киберпанк, но через неделю и написать.


    1. 3draven
      27.09.2022 13:19

      Посмотрел. Киберпанк не поддерживает контроллер. Это значит придется ремапить кнопки и пр. Не хочу :) Элден ринг же мне не нравится и в библиотеке его нет. Я кибер на клавомвшке проходил. Что такое gow я не знаю, наверное god of war? Тоже у меня нету, скидки на него будут может куплю.


      1. jryj
        27.09.2022 15:02

        В смысле не поддерживает? КОнтролер от XBox точно работает. И не уверен, но помоему и от соньки работает — вот не помню, играл ли с ДС4 или нет.


        1. 3draven
          27.09.2022 15:04

          Ну, в стиме так написано. Раз поддерживает, попробую :)


  1. Rast1234
    27.09.2022 22:05

    Что-то не понимаю. В начале статьи речь о том, что если подключить проектор по HDMI - будет инпут лаг, потому что проектор "не игровой" и добавляет задержку. Описанное решение - подключить SteamLink (не железный, а софтверный, по сути стриминг), который работает по Wi-Fi - и он будет меньше тормозить? Это так дико странно... То есть время отклика у проектора нормальное? Может быть, лаги добавляются всякими улучшайзерами, уплавняторами и прочей фигней, которая обрабатывает картинку со входа HDMI?


    1. 3draven
      27.09.2022 22:35
      +1

      Блин, не написал. Это задержка с HDMI удлиннителем. Проектор от компа на другом конце квартиры. Добавлю в статью. Если проводом метровым подключить, то играть вполне можно если ты не киберспортсмен.


      1. 3draven
        27.09.2022 22:38
        +1

        Добавил в статью, спасибо за внимательность.


        1. Rast1234
          27.09.2022 22:54
          +1

          я как-то покупал 10 метров HDMI, было относительно норм.. но пришлось поискать качественный провод и аккуратно прокладывать :)


          1. 3draven
            27.09.2022 23:32

            Как ни странно, но стимлинк всем удобнее. Проводов нет это самое заметное. Второе это то, что как только он коннектится к стиму на компе с проектора, тут же стартует и выводитсяя на проектор интерфейс Big Picture и все с него запущенные игры туда же. Что бы так сделать при подключении по проводу придется привязывать приложения к определенному экрану и пр. В общем возни больше значительно, а результат тот же по задержкам или даже похуже.

            Но может и попробую купить длинный кабель, вдруг понравится.


            1. 3draven
              27.09.2022 23:35

              Правда подозреваю это актуально только на моем компе с мощной видюхой, так как захват все же съедает какую то чать FPS наверное...что мне не заметно.


              1. Rast1234
                28.09.2022 00:56

                мой опыт опыт со стимлинком-железкой по 100 мегабитному проводу: там было видно артефакты сжатия даже в 720p. на 5ghz wifi наверно уже таких проблем нет, кроме некоторой задержки. но удобный запуск и интеграция со стимом это плюс, конечно!


                1. 3draven
                  28.09.2022 13:03

                  Еще зависит от того как именно жмется картинка и чем. Алгоритмы имеют значение, либо видеокарта работает, либо программно (лучше будет), либо еще что то. Вариантов много.


                1. 3draven
                  28.09.2022 13:05
                  +1

                  Длинны кабель я купил. Работает, задержки сравнить не могу, вроде бы примерно одинаковые с Steam Link. При этом теперь придется разобраться как стартовать стим на одном экране, а Big Picture на другом и все игры. Пока не знаю даже куда копать, так как окно Big Picture и стима ничем не отличаются по названию и классу и как то их опознать не выйдет. Думаю.


  1. ingumsky
    28.09.2022 21:23

    Простите, так и не понял, какой у вас сетап в плане железа? Про проектор, контроллер и Линукс понял :)


    1. 3draven
      28.09.2022 21:58

      Ну, а что вы еще хотите узнать? Видеокарта там тоже есть.