1

Я использую Linux Mint 17 с Cinnamon в качестве основного WM.

Я хочу запустить Steam на отдельном x-сервере для повышения производительности в полноэкранном режиме, а также потому, что в Cinnamon функция unredirect не работает должным образом, что приводит к разрыву и не приводит к реальному повышению производительности.

Я могу запустить x-сервер:1 на vt9 с fluxbox в качестве оконного менеджера, но я не могу понять, как заставить мой контроллер работать в играх на втором x-сервере. До сих пор я тестировал Steam Big Picture, Shovel Knight, Rogue Legacy и Higan, и мой контроллер не распознается ни на одном из них.

Я вижу джойстик в /dev /input как на моем главном x-сервере, так и на дополнительном, контроллер виден в jstest-gtk, а xinput сообщает об одном и том же на обоих x-серверах (без указания джойстиков)

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

Я использую контроллер XBox360. Я попытался установить xboxdrv, и это не имеет значения.

Что мне не хватает? Есть идеи?

1 ответ1

1

(Я также использую Mint 17 с Cinnamon в качестве основного рабочего стола)

Вы можете рассмотреть возможность использования Xephyr, который может создать вложенный сервер xserver внутри вашего рабочего стола Cinnamon. Я могу использовать свой геймпад (Thrustmaster PS3-type) на сервере Xephyr. У меня не установлен Steam, но я проверил это с помощью другой игры (alex4). Я столкнулся с проблемой разветвления Xephyr (которого не было в старых версиях), но смог обойти это, запустив его из окна xterm. Глядя на то, что я сделал, может помочь вам начать:

sudo apt-get install xterm xserver-xephyr alex4

Затем из терминала:

xterm -e Xephyr :1 -ac -screen 640x480 &

«xterm -e» вызывает запуск xterm и выполнение следующей команды.

«Xephyr:1» означает, что новый дисплей будет:1. Выберите что-то другое, если у вас есть несколько мониторов. Это должно быть что-то, чего еще не существует. (Если у вас один монитор, отображается:0, отображается секунда:1 и т.д.)

«Xephyr -ac» означает отключение контроля доступа, что, как я считаю, означает, что новый xserver будет иметь полный доступ к системе.

«Xephyr -screen widthxheight» - это разрешение (оно также может принимать третье число для битовой глубины, которое я использовал для получения старых программ Windows, для которых требуется 256-цветный режим для работы через Wine).

«&» заставляет xterm разветвляться, позволяя вам ввести другую команду в терминале.

Далее в терминале:

DISPLAY=:1 alex4

Установите системную переменную DISPLAY на любой экран, который вы создали с помощью Xephyr, затем запустите нужную программу.

Если вы пишете сценарий оболочки для запуска этих команд, поместите его в спящий режим, чтобы у Xephyr было достаточно времени для запуска нового дисплея, или ваша попытка запустить программу не удастся из-за ошибки сегментации.

У Xephyr есть флаг «-fullscreen», который вы можете использовать, но вам нужно, чтобы разрешение вашего рабочего стола Cinnamon соответствовало разрешению экрана вашего сервера Xephyr, чтобы он работал должным образом. Используйте для этого xrandr и запомните свое старое разрешение, потому что позже вам придется его вернуть. Например, в моем случае:

xrandr -s 640x480 && xterm -e Xephyr :1 -ac -screen 640x480 -fullscreen & sleep 3 && DISPLAY=:1 alex4 && killall xterm && xrandr -s 1920x1080 && killall Xephyr

(Если вы не знаете, символ && означает ожидание завершения первого процесса, а затем выполнение следующего. Одиночный символ & означает, что нужно выполнить первый процесс и перейти к следующему.)

Надеюсь, это поможет вам. (Введите «Xephyr -help» для получения полного списка параметров. Страница справочника, к сожалению, редкая.)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .