Sign in to follow this  

raw input blues . . . again

This topic is 3480 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'll get straight to the point. I've been working on an input system for my games, and I've been trying to add functionality to process raw input by using WM_INPUT. However, whenever I register a raw input device, my window becomes non-responsive and my computer becomes quite slow. I've looked at a few posts about raw input, and I read that slowness can be expected when using raw input in a windowed application. However, I tried my program fullscreen, and I'm pretty sure I have the same problem -- the cursor is an hourglass icon. MSDN doesn't seem to have much documentation about raw input (but, that can be expected). Does anyone know if this can be fixed? Do you think it's worth it to use raw input in my applications? By the way, sorry to anyone who's sick and tired of hearing from me about input! ;-) --ProgrammerZ

Share this post


Link to post
Share on other sites
Are you receiving WM_INPUT messages in your message loop?

I would suggest you take a look at Mame's source code it uses Raw Input and might help you figure out what your doing wrong.

Share this post


Link to post
Share on other sites
Sounds like you maybe using the RIDEV_NOLEGACY flag or not propagating all the messages which you do not handle. Without some more info it is hard to say really.

Share this post


Link to post
Share on other sites
Quote:
Original post by CmpDev
Sounds like you maybe using the RIDEV_NOLEGACY flag


I am using the RIDEV_NOLEGACY flag. I mostly just copied and pasted code from a MSDN tutorial, and the tutorial used that flag. I don't know much about the inner workings of the Windows raw input system . . . should I use a different flag instead? I want to offer support for windowed and fullscreen apps . . . Evil Steve?

Share this post


Link to post
Share on other sites
The RIDEV_NOLEGACY Flag just prevents windows from sending the "normal" input-messages to your message-queue. Thus, your window won't react to any input as there are no messages passed to the DefWindowProc(). (except if you handle everything yourself via WM_INPUT - don't do that! ;-) )

So just leave RIDEV_NOLEGACY out and everything should work as you're used to.

Share this post


Link to post
Share on other sites
Sign in to follow this