我最近一直在进入DirectX以及游戏编程。我已经开始充实我的计划基础,现在我正在考虑处理输入。我现在的方式是通过在我的主循环中调用一个函数,它使用GetDeviceState(简而言之)和它们各自的参数来查询鼠标和键盘;但是,在深入阅读DirectInput之后,我看到许多人说DirectInput不再被推荐使用。微软似乎也同意!在游戏中处理鼠标和键盘输入的不同选项
我正在寻找其他的方法去这样做,对有关它们的利弊讨论,沿(不是必须的,但欢迎。我可以研究)
我最近一直在进入DirectX以及游戏编程。我已经开始充实我的计划基础,现在我正在考虑处理输入。我现在的方式是通过在我的主循环中调用一个函数,它使用GetDeviceState(简而言之)和它们各自的参数来查询鼠标和键盘;但是,在深入阅读DirectInput之后,我看到许多人说DirectInput不再被推荐使用。微软似乎也同意!在游戏中处理鼠标和键盘输入的不同选项
我正在寻找其他的方法去这样做,对有关它们的利弊讨论,沿(不是必须的,但欢迎。我可以研究)
只需使用GetMessage或PeekMessage,例如should-i-use-directinput-or-windows-message-loop 。
您可以使用Win32 /窗口API。
gamedev的人似乎都同意:http://www.gamedev.net/community/forums/topic.asp?topic_id=511020
对于键盘我通常使用GetAsyncKeyState();.它表示如果在执行此功能时按下了键。
但对于鼠标来说,最好的解决方案是使用DirectInput,我认为。因为Windows监视它的位置,你不必这样做。
这几天建议使用"Raw Input"。
啊是的,我喜欢这样的外观。如果工作完美无缺,我马上就会开始使用,除非您使用操纵杆,否则编写这个 – Tanner 2010-02-05 22:58:04