On 3/19/16 12:59 PM, Juan Jose Gonzalez wrote:
Hi,
On 03/16/2016 02:45 AM, Roderick Colenbrander wrote:
Hi Juan,
Thank you for pointing out the enumeration process. The reason I implemented Xinput was to play a game that didn't support any other input method, so until now, I hadn't given it much thought. According to https://msdn.microsoft.com/en-us/library/windows/desktop/ee417014%28v=vs.85%... , an XInput device shows up in DInput with an ID containing "IG_", which is what developers should use to filter them out. This might make things a bit difficult, since in Wine, both DInput and XInput devices are supposed to be created from a common HID base, so Wine's DInput cannot know anything about whether a device is an XInput device or not.
The IM_/IG_ device enumeration thing is done driver level. I have some super basic logic in my current set of patches that uses IG_ if i know the device is a gamepad device. We may in the future want to make that smarter in the future (Counting axis/buttons etc...)
-aric