
Я использую сторонний контроллер (в моем примере это Saitek P990). Я прекрасно им пользовался довольно долго, потому что игры, в которые я играл, вообще не определяли мой джойстик, и я мог использовать его с любымx360ceилиЭмулятор World of Joysticks xInputчто сработало отлично.
Однако определенная игра (CrossCode в этом примере) обнаруживает мой геймпад P990 и работает так, как и ожидалось, за исключением правого стика, -- вертикальное перемещение перемещает горизонтальную ось, а горизонтальное перемещение ничего не делает. В игре нет возможности переназначить привязки джойстика в игре.
Я попытался исправить это с помощью моего обычного метода виртуальной эмуляции.x360ceметод ничего не делает и далее я пробуюВоДжметод. На этот раз я обнаружил, что игра принимает ввод со всех джойстиков одновременно, поэтому одно нажатие кнопки приводит к двойному нажатию в игре, а правый стик ведет себя странно. В настройках нет возможности выбрать, какой геймпад должна использовать игра. Игра просто одновременно обнаруживает ввод с P990 и эмулируемого геймпада.
С использованиемJoyIDпереключение номера идентификатора геймпада показывает, что игра использует все 16 номеров идентификаторов и не отдает приоритет одному из них, а просто использует их все.
Чтобы отключить игру, принимающую данные с физического геймпада, я попробовал отключить драйвер в диспетчере устройств Windows, но, как я и ожидал, он отключился и для эмулятора.
Используя такие инструменты, какJoyToKeyилиvJoyИ снова неудача, поскольку игра по-прежнему использует ввод с физического джойстика.
Есть ли способ отключить джойстик для одной программы и включить для другой? Есть ли что-то еще, что я могу попробовать?