I use RawInput + Windows USB HID API to receive WM_INPUT message when a gamepad button is pressed and retrieve gamepad state.
There's a problem: two triggers work on same axis which means you can't figure out if two triggers are pressed at the same time. I observe the same behaviour when launch OS Windows gamepad test application. But I need to distinguish these two buttons pushed.
Note that XInput works as desired, it gives you two axises for two triggers, but I don't want use XInput because it's only for XBox controllers and there are dozens of non-xbox controllers in the world.
I suppose there must be a way to read two axises through USB HID API, but until now I couldn't find it. Have you resolved the issue?
Gamepad: XBox 360 used (but any other should be supported).
OS: Windows 7.
IDE: Visual Studio 2010.
Language: C++