Подмена игрового контроллера
Я пытаюсь написать что-то, что позволит пользователю использовать комбинацию клавиатура / мышь на игровой консоли. Подход, о котором я подумал, заключается в следующем:
Выясните, как вход отображает для вывода в контроллере консоли. Это старый добрый метод проб и ошибок, по сути, подключающий контроллер через USB к компьютеру и выясняющий, как контроллер реагирует на ввод, используя детальную USB-регистрацию.
Затем напишите пользовательскую программу, которая принимает ввод с клавиатуры и мыши и преобразует его в вывод контроллера.
Все идет нормально. Теперь наступает сложный момент. Мне нужно найти способ подключения моего компьютера к консоли, при этом заставляя консоль думать, что на самом деле подключается стандартный контроллер. Для этого мне понадобится способ создания фальшивого USB-устройства, которое связывается через USB-порт с консолью. Это та часть, о которой я понятия не имею, как это сделать.
Я думаю, что я ищу какую-то USB-спуфинговую библиотеку, но я не уверен, с чего начать искать что-то подобное. Привязки Python для библиотеки были бы хороши, но я не привереда. Точно так же, что-то, что работает на Mac или Linux, было бы идеально, но я мог бы жить с библиотекой только для Windows в крайнем случае.
1 ответ
USB не работает таким образом. USB включает в себя целевую иерархию устройств, и попытка подключить два хост-устройства (ваш компьютер и консоль) приведет только к плохим вещам (например, к разрушению контроллеров USB на обоих устройствах).
Вероятно, лучше всего было бы использовать какой-нибудь встроенный процессор, такой как Arduino, чтобы сидеть между клавиатурой / мышью и консолью для выполнения преобразования.