我最近一直在使用DirectX以及游戏编程。我已经开始充实我的程序基础,现在我正在寻求处理输入。我现在的方式是通过在我的主循环中调用一个函数来查询鼠标和键盘,使用GetDeviceState(简而言之)和它们各自的参数;然而,在深入阅读DirectInput之后,我看到很多人都说不再推荐使用DirectInput了。微软似乎也同意了!
我正在寻找的是其他方法,以及关于它们的利弊的讨论(不是必需的,但是欢迎。我可以研究)
答案 0 :(得分:4)
只需使用GetMessage或PeekMessage,请参阅should-i-use-directinput-or-windows-message-loop 举个例子。
答案 1 :(得分:1)
您可以使用win32 / windows API。
gamedev的人似乎同意:http://www.gamedev.net/community/forums/topic.asp?topic_id=511020
答案 2 :(得分:0)
对于键盘,我通常使用GetAsyncKeyState();.它表示如果在执行此功能时按下了键。
但是对于鼠标来说,最好的解决方案就是使用DirectInput。因为Windows监视它的位置而你不必这样做。
答案 3 :(得分:0)
这些天建议使用"Raw Input"。