My gamepads use Zaxis and RotationZaxis for the right thumbstick

Feb 7, 2011 at 12:41 PM


This isn't something that you really need to include in your framework unless a lot of people have the same issue. Just though I'd report how my gamepads work.

My playstation gamepads don't have any RotationX or RotationY axis, their right thumbstick uses Zaxis (for X) and rotationZaxis (for Y) for the right thumbstick instead.

If this configuration is common, and to be honest I have no clue as to how common it is, It could be a good idea to add a fallback to include this case.

i.e. if RotationX and Rotation Y don't exist, use ZAxis and rotationZaxis for rightthumbstick instead.

Not really a problem for me. I've just edited the code over here on my side so it works for me. ;o)


Feb 7, 2011 at 10:10 PM

I have to admit that the axis mapping in Nuclex.Input has been a bit of a guessing game for me. The axes are all nicely tagged and self-describing, but you never know where on your game pad they end up being :)

  • My Xbox 360 game pad, when queried via DirectInput, reports a RotationX and a RotationY axis
  • My Thrustmaster Dual Analog pad reports a RotationZ axis and one Slider (huh?) instead

I don't know if that's a good idea, but I could just take the the first four axes and assign them to the X, Y, Rx, Ry axes of the (non-extended) GamePadState in that order.

Or maybe I could write a small test app that tells which axes are there and post that to the XNA forums/CodePlex/my website to get a larger sample size. I've got no idea what the most common configuration is and whether one could work out a mapping system that would yield at least a half-decent mapping for what's out there...

...I do know, however, that as soon as I plug in my Thrustmaster pad, all Unreal Engine games have my character spinning around in circles endlessly until I rip it out, so I'm not the only one who has trouble seeing the system in this madness :]