Apenas 4 botões podem ser pressionados por vez, para que os jogadores não possam se mover às vezes
Cada jogador tem seus próprios controles
i Alterar, Seta para cima e os outros para cada jogador --- v
EntradasV-VV
public string UpArrow;
public string DownArrow;
public string LeftArrow;
public string RightArrow;
if(Input.GetButton(UpArrow))
transform.Translate(Vector3.forward * moveSpeed * Time.deltaTime);
if(Input.GetButton(DownArrow))
transform.Translate(-Vector3.forward * moveSpeed * Time.deltaTime);
if(Input.GetButton(LeftArrow))
transform.Rotate(Vector3.up, -turnSpeed * Time.deltaTime);
if(Input.GetButton(RightArrow))
transform.Rotate(Vector3.up, turnSpeed * Time.deltaTime);
Respostas:
Os teclados têm limitações de hardware em quantas teclas podem ser pressionadas e reconhecidas ao mesmo tempo.
Seu código não é o problema aqui, é provavelmente o design do teclado.
fonte
Os teclados têm uma matriz de teclas, na qual os botões foram dispostos em algo mais ou menos quadrado, com os interruptores de teclas cada um vinculado a uma linha e uma coluna. O teclado ativa cada linha e depois lê as colunas. Se você esboçar isso, verá que algumas combinações de botões devem ativar as teclas "fantasmas". Você pode corrigir isso com um diodo por botão (que é um custo substancial para um teclado) e ter uma sobreposição total . Para evitar os fantasmas, um teclado sem sobreposição total ignorará combinações de teclas ambíguas.
As teclas modificadoras são sempre projetadas para que possam ser acordadas.
Uma vez que o teclado possui um conjunto de teclas a ser relatado, ele deve ser compilado no relatório USB HID, que possui um byte que é uma máscara de bit de modificadores e 6 bytes para outros scancodes. Portanto, mesmo com o rollover completo, é provável que você não veja mais de 8 modificadores e 6 scancodes simultaneamente.
(o relatório do teclado também possui um byte que é sempre 0, perfazendo um total de 8 bytes)
fonte