I develop a screen where user can configure its gamepad. And I ran at the problem of detecting controller’s D-Pad correctly on different gamepads.
I have XBox 360 and SNES Buffalo gamepads. The first controller is of gamepad type, the second on is of stick type. D-Pad on XBox is detected as POV and has different values depending on pressed direction. D-PAD on SNES Buffalo is detected as x (for left and right) and y (for up and down) with values -1.0 and 1.0.
I’m going to use gamepads of different manufacturers. So the question is simple: do all Gamepads have their D-PAD as POV component and Sticks have their D-PAD as x / y ? If no, how can I detect D-PAD controller in more precise way?