Ao jogar Xonotic
o joystick Logitech F310
já estava funcionando mas depois de reiniciar o computador ele parou completamente de funcionar.
Quando pressiono shift
+ esc
durante o jogo tento habilitar o joystick com
joy_enable 1
mas parece ativar meu touchpad em vez do joystick.
Ele escreve:
Joystick 0 opened (SDL_Joystick 0 is "ETPS/2 Elantech Touchpad" ...
O jogo começa a girar e nenhum botão do joystick funciona.
Como corrigir para que
joy_enable 1
habilite meu joystick?
Joystick é visto jstest-gtk
como/dev/input/js0
Eu também configurei a variável
export SDL_JOYSTICK_DEVICE=/dev/input/js0
sudo chmod 777 /dev/input/js0
Responder1
Parece que o SDL está identificando erroneamente seu touchpad como um joystick. Isso parece estranho, mas faz um pouco de sentido se você entender que as entradas do joystick e do touchpad são semelhantes. Ambos enviam entradas como um par de coordenadas X e Y absolutas e ambos possuem botões.
Provavelmente o SDL também vê seu gamepad F310, mas enumera os dispositivos em uma ordem diferente dependendo de coisas como se o gamepad estava conectado quando o jogo foi iniciado. Você pode dizer ao xonotic para usar o segundo gamepad executando joy_index 1
no console do jogo.