Hanya 4 tombol yang dapat ditekan pada satu waktu, sehingga pemain terkadang tidak dapat bergerak
Setiap Pemain Memiliki Kontrol mereka sendiri
i Ubah, Panah Atas dan yang lainnya untuk setiap pemain --- v
Inputs-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);
Jawaban:
Keyboard memiliki batasan perangkat keras pada berapa banyak tombol yang dapat ditekan dan dikenali pada saat yang bersamaan.
Kode Anda bukan masalah di sini, kemungkinan besar desain keyboard.
sumber
Keyboard memiliki matriks kunci, di mana tombol telah diatur menjadi sesuatu yang kira-kira persegi, dengan masing-masing tombol diikat ke satu baris dan satu kolom. Keyboard mengaktifkan setiap baris dan kemudian membaca kolom. Jika Anda membuat sketsa ini, Anda akan melihat bahwa beberapa kombinasi tombol harus mengaktifkan tombol "phantom". Anda dapat memperbaikinya dengan satu dioda per tombol (yang merupakan biaya besar untuk keyboard) dan memiliki rollover penuh . Untuk menghindari hantu, keyboard tanpa rollover penuh akan mengabaikan kombinasi tombol yang ambigu.
Kunci pengubah selalu dirancang sedemikian rupa sehingga dapat dikunci.
Setelah keyboard memiliki seperangkat tombol untuk dilaporkan, keyboard harus dimasukkan ke dalam laporan USB HID, yang memiliki satu byte yang merupakan bitmask pengubah, dan 6 byte untuk scancode lainnya. Jadi bahkan dengan rollover penuh Anda tidak akan melihat lebih dari 8 pengubah dan 6 scancode secara bersamaan.
(laporan keyboard juga memiliki satu byte yang selalu 0, menghasilkan 8 total byte)
sumber