Multiple keys with Direct Input... What gives?

Started by
6 comments, last by Lotan 23 years, 2 months ago
I''ve been working on a direct X based game for awhile now, and the other day while testing, I noticed something really odd. When I held down certain key combinations, the keystrokes didn''t register. One example is A, Z, and D. Well, I looked through all of my code, and after running a test app that came with DirectX, It seems that this is a DirectX problem. Does anyone know any work arounds, or have any advice as to how to solve this?
Advertisement
IIRC this is to do with the way keyboards work, not DirectX. The keys on the keyboard are wired on a matrix, so if you press three keys on a square on the matrix, it will get confused. The PC (software or hardware, I can''t remember) detects this and blocks it. Something like that anyway.
Gee Brain, what we gonna do tonight?
yes its a problem with the conections inside in quite a few keyboards (it used to be much worse practicall every keyboard) certain combinations cant be read together thus u need in your program to have userdefinable keys

http://members.xoom.com/myBollux
Thanks for the help. I was starting to suspect it was a hardware problem. The same combinations fail on my Microsoft Natural Pro, my laptop, and my dell keyboard at work. I guess I can at least figure out those combinations, and make sure they won''t happen.
Best thing is to allow the eu to specify the keys that they wish to use. Prevents alot of problems
Letting the user define the keys is fine, and is in the works, but what happens when the user picks keys that don''t go together, and then automatically think the game is broken?
It''s quite common for this to be mentioned in readme''s, under "troubleshooting". Or you could mention it in the keyboard configuration screen.
Interesting, I never knew this..

I can hold down about 10-20 key''s befor some aren''t detected by DInput.

I''m using a LogiTech wireless multimedia keyboards, didn''t feel like paying an extra $70 just to get a curved one

This topic is closed to new replies.

Advertisement