Archived

This topic is now archived and is closed to further replies.

Mathx

DxInput question

Recommended Posts

Mathx    122
Hello, How does the direct-x input system works (technically speaking)? By some experiences I made, I think It doesn''t read directly the keyboard for the state of a key; I want to know this, because I would like to know if there''s a way of "simulating" or "dispatching" keys to an application running direct-x and using dxInput. Thanks, Matheus Degiovani.

Share this post


Link to post
Share on other sites
Rehfeld    122
Strait out of the DirectX8 SDK documentation:

Because Microsoft® DirectInput® works directly with the device drivers, it either suppresses or ignores Microsoft Windows® mouse and keyboard messages. It also ignores mouse and keyboard settings made by the user in Control Panel. It does, however, use the calibrations set for a joystick or other game controller.

DirectInput does not recognize keyboard character repeat settings. When using buffered data, DirectInput interprets each press and release as a single event with no repetition. When using immediate data, DirectInput is concerned only with the present physical state of the keys, not with keyboard events as interpreted by Windows.

DirectInput does not perform any character conversion or translation. For example, the SHIFT key is treated like any other key, not as a modifier of another keypress. Keys return the same identifiers regardless of the user''s system language settings.

Under Windows 2000, acquiring the keyboard in exclusive mode prevents any applications that are subsequently launched from receiving keyboard data.

Because DirectInput works directly with the mouse driver, it bypasses the subsystem of Windows that interprets mouse data for windowed applications. Applications that rely on the Windows cursor for navigation should continue to use the standard Windows mouse messages and Microsoft® Win32® functions.

When using the system mouse in exclusive mode, DirectInput suppresses mouse messages, and therefore Windows is unable to show the standard cursor.

DirectInput ignores Control Panel settings such as acceleration and swapped buttons. However, DirectInput recognizes settings in the driver itself. For example, if the user has a three-button mouse and uses the driver-utility software to make the middle button a double-click shortcut, DirectInput reports a click of the middle button as two clicks of the primary button.

Share this post


Link to post
Share on other sites