Играем в игрушки по сети в прямом смысле слова :)

для раздела Блоги

Решил написать такую небольшую заметку, вполне возможно, что кому-то эта информация окажется полезной, тем более что русскоязычных мануалов на эту тему я как то не замечал.
Речь пойдет об стриминге игрушек по локальной сети. Сразу оговорюсь, что целевая платформа - исключительно и только Linux, ко всему гневу пользователей сего портала. Уж извините :-D
На сервере у меня стоит Debian 7.3, на клиенте - Ubuntu 13.10.
Начнем с сервера. Для начала нужен VirtualGL, скачаем .deb под свою архитектуру с оффициального сайта, поставим так:


cd /путь/до/пакета

sudo dpkg -i ./virtualgl*

Затем нужен vnc-сервер. Это легко:


sudo apt-get install tigthvncserver

Запускаем:


vncserver

И коннектимся любым vnc-клиентом (хоть стандартным бубунтовским по порту 5901) Но запускаются только голые иксы. Чтобы запустить, например, теминал, добавим в


$HOME/.vnc/xstartup

Это:


xterm

Соеденимся, и выполним:


vglrun glxgears

Если такой команды нет, надо бы поставить пакет mesa-utils. Все это на сервере, естественно!
Если все запахало, можно заметить, что звука не будет. Его vnc передавать не умеет. Используем замечательные костыли, которые уже есть в системе - кинем звук через pulseaudio. В убунте уже есть paprefs, запустим его и разрешим коннектиться к пульсу клиента. Вроде не сложно. Теперь можем запускать игру так:


PULSE_SERVER= vglrun <игор, больше игор!!>

Если приложение не умеет мычать через пульс, можно сделать так:


PULSE_SERVER= padsp vglrun <игор, больше игор!!>

Вот скрин, ежели не верите:

Так вот, хочется подытожить. Рендерингу на сервере это дело не мешает, равно как и звуку. Компы соеденены гигабитной сетью, в разрешении 1024х768@24 bit стабильные >60 fps без видимых искажений, думаю, разрешение можно сделать и 720p. Есть потенциал к ускорению методом использования TurboVNC вместо TightVNC, но к нему не все клиенты нормально коннектятся, надо ставить его клиент, а мне как то немного лень. И да, еще, в таких динамичных играх, как OpenArena, наблюдается терпимая, но все же заметная задержка. Так что для таких динамичных игр такой способ истязания своей домашней сети не очень хорошо подходит.
Засим откланяюсь.
P.S. Небольшой апдейт. Если хочется погонять игрушки под вайном, и у вас 64-битная система, следует накатить 32-битные библиотеки, которые разработчики с любовью упаковали в небольшой дополнительный пакет.
Telegram-канал @overclockers_news - это удобный способ следить за новыми материалами на сайте. С картинками, расширенными описаниями и без рекламы.
Оценитe материал
рейтинг: 1.0 из 5
голосов: 2

Возможно вас заинтересует

Популярные новости

Сейчас обсуждают