Статьи

Под Linux выходит всё больше игр, причём игр достаточно интересных и популярных. Одной из таких игр является DOTA 2. И хоть я не дотер и к этой игре отношусь прохладно, запустить её под Linux было очень интересно. Естественно не обошлось без шаманства, причиной танцев с бубном стала двойная видеокарта.

Смысл проблемы в том, что на моём ноутбуке стоит GeForce 640m, который работает в паре со встроенном в процессор видеоядром, в виндовс проблем с этим нет, а вот на Linux пришлось устанавливать пакет программ. Уточню, что работаю на Ubuntu 13.04 и все действия справедливы именно для этой ОС.

Устанавливаем видеодрайвер

Для того, чтобы начала работать видеокарта, необходимо установить драйвер и программу Bumblebee (если Вы уже сделали это, данный шаг пропускаем). Заходим в терминал и последовательно выполняем эти три команды (если будут появляться запросы на подтвержление каких-либо действий — соглашаемся):

sudo add-apt-repository ppa:bumblebee/stable
sudo apt-get update
sudo apt-get install bumblebee virtualgl linux-headers-generic

Теперь перезагружаемся. Всё, отныне ноутбук будет работать на встроенной видеокарте, а если нужно будет задействовать камень Nvidia, то перед командой нужно ввести optirun. Пример, запускаем firefox: optirun firefox

Запускаем Steam

Скачать Linux версию Steam можно на официальном сайте, устанавливается она одним кликом, но вот запускаться не хочет, пишет: «You are missing the following 32-bit libraries, and Steam may not run: libGL.so.1». Дело опять в видеокарте, но мы всё установили, поэтому запускаем Steam командой:

optirun steam

После чего всё нормально пускается и работает. Далее устанавливаем DOTA 2 из магазина Steam и после установки щёлкаем правой кнопкой мыши по названию игры в библеотеке, вызываем свойства и на основной вкладке ищем параметры запуска (у меня в английской версии это называется «SET LAUNCH OPTIONS…»).

Туда вставляем строчку:

LD_PRELOAD=”libpthread.so.0 libGL.so.1″ __GL_THREADED_OPTIMIZATIONS=1 optirun %command%

 

Всё, теперь при запуске игры будет использоваться видеокарта от Nvidia и никаких проблем не будет.

По производительности могу сказать, что на GeForce 640M под Linux DOTA2 идёт с некоторым притормаживанием, однако если снизить качество картинки — то всё становится вполне играбельно.

PS.

Если у вас данный способ не сработает, попробуйте в параметрах запуска использовать следующую строку:

vblank_mode=0 PRIMUS_SYNC=1 STEAM_RUNTIME=1 optirun -b primus %command% -language russian -novid

НО(!) перед этим нужно установить программу Primus, сделать это можно просто через центр приложений. Данный способ помог мне на другом ноутбуке, с видеокартой GeForce GT 555M.

Об авторе блога


Дмитрий Кушавин

Персональный блог. IT, безопасность, политика и важные новости.