Coisas que eu quero fazer
Este é um memorando sobre como lidar com a situação em que você não está recebendo eventos de um gamepad, mesmo tendo configurado o InputSystem do Unity da seguinte forma.

razão
Joystick
Para começar, o motivo é que o controle que eu estava usando não era um gamepad.
O que estou tentando dizer é que o Unity estava reconhecendo o controle que eu estava usando como um joystick, e não como um gamepad.
Como verificar
Adicione um componente de entrada do jogador a qualquer objeto de jogo.
Clique em Abrir depurador de entrada.

Clique duas vezes para selecionar o dispositivo que deseja verificar na pasta Dispositivos.
Verifique o tipo. Nos casos a seguir, trata-se de um joystick, não de um gamepad.

Nesse caso, você precisa registrar os eventos do Joystick no InputSystem, e não os eventos do GamePad.
Mesmo assim, eles não vieram.
No meu ambiente (controlador), mesmo após registrar os eventos do joystick, não recebi nenhum evento.
Parece que o evento sequer estava sendo recebido pelo InputSystem do Unity.
Como verificar
Como antes, abra o dispositivo de destino no Depurador de Entrada.
Na parte inferior, encontra-se uma tabela de Eventos; portanto, manipule o controlador adequadamente para verificar se algum evento está sendo acionado.
Parece que alguns controles mais antigos ou baratos não são compatíveis.
contramedida
Como não é possível realizar testes nas condições acima, utilizaremos um emulador de controle de Xbox (x360ce) para os testes.
download
Faça o download da versão desejada no seguinte site. (Clique em ‘Assets’ e, em seguida, em ‘x360ce.zip’)
Este artigo utiliza a versão 4.17.15.0 do X360CE.

instalar
A instalação é tão simples quanto extrair os arquivos para qualquer pasta.
Configuração inicial
Inicie o aplicativo, selecione Controlador1 e marque Ativar 1 dispositivo mapeado .

Clique no problema à direita quando ele estiver destacado.
Você poderá ser solicitado a instalar drivers. Além disso, após a instalação, o programa poderá parar de responder, mas reiniciar o computador mostrará que os drivers foram instalados com sucesso.
Em seguida, clique em Adicionar e selecione o dispositivo que deseja usar na lista que aparece.
Em seguida, usar o AutoClick configurará o mapeamento dos botões corretamente.

Se você não gostar das configurações, pode remapeá-las clicando no botão na imagem do controlador e, em seguida, pressionando o botão que deseja atribuir.
Se XinputControllerWindows estiver listado nos dispositivos do depurador de entrada, conforme mostrado abaixo, então a operação foi bem-sucedida.
Se não estiver listado, tente iniciar (jogar) e depois parar o jogo.

O controlador deixará de funcionar se o x360ce for fechado. Será necessário reiniciar o x360ce para voltar a utilizá-lo.


コメント