Sunday, May 25, 2014

Ведьмак 2, Steam и Linux

Актуально для Linux Mint 16 (Ubuntu 13.10) на ноутбуках с дискретной картой Nvidia и поддержкой Optimus.

Должны быть установлены последние драйверы Nvidia, bumblebee и primus (тыц).

Игра устанавливается в ~/.local/share/Steam/SteamApps/common/the witcher 2.
Настройки хранятся в ~/.local/share/cdprojektred/witcher2/GameDocuments/Witcher 2.



Если в Steam нажатия клавиш дублируются:
Виноват установленный xneur (gxneur).
Просто добавить Steam в исключения: gxneur preferences => Applications => Ignore these applications list.
В исключения придётся добавлять и сами игры.

Для запуска Steam через дискретную карту: 
- В файле .desktop правим секцию Exec:
  Exec=bash -c "vblank_mode=0 primusrun /usr/bin/steam %U".
- Вариант запуска из консоли: STEAM_RUNTIME=1 optirun steam,
  где STEAM_RUNTIME - опциональная переменная, принудительно заставляет Steam использовать встроенное окружение.

Для запуска конкретной игры через дискретную карту:
steam support:
В клиенте Steam в библиотеке правой кнопой по игре, которую хочешь запускать с дискретной видеокартой => Свойства (properties) => Установить параметры запуска (Set launch options).
В командной строке ввести:
[vblank_mode=0] primusrun %command%
или, как вариант:
[vblank_mode=0 ] optirun %command%

Настройка Bumblebee:
совет с ЛОРа:
1. Обновите дрова до nvidia-current-updates или nvidia-experimental-*. 
2. Настройте конфиг bumblebee.conf:
    KeepUnusedXServer=true
    TurnCardOffAtExit=false
    VGLTransport=yuv   (важно: не proxy! здесь кроются большие тормоза)
    PMMethod=none
3. Поставьте primus поверх bumblebee. 
    Запускайте игры через PRIMUS_SYNC=1 primusrun <command>
4. При желании можно сделать renice игровому процессу. 
    После всего вышеперечисленного должно летать.

Если не работает управление персонажем:
это баг конфигуратора. Решение (steam community):
  • В настройках все настраиваем как надо, в т.ч. сбрасываем на дефолт управление
  • Не запуская игру в ~/.local/share/cdprojektred/witcher2/GameDocuments/Witcher\ 2/config/User.ini удаляем секцию [InputQWERTY]
  • Запускаем игру

Можно запустить программу из консоли:
vblank_mode=0 optirun -b primus %command%,
где vblank_mode=0 - опционально, отключает вертикальную синхронизацию для повышения производительности