jloehr / HID-Wiimote

Windows Device Driver for the Nintendo Wii Remote
GNU General Public License v3.0
215 stars 45 forks source link

XUSB Support #4

Open jloehr opened 9 years ago

jloehr commented 9 years ago

Let the Wii Remote appear as Xbox 360 Controller, so it can be accessed by XInput.

larsiusprime commented 9 years ago

How would you map the various motion control axes to an Xbox 360 controller? Just curious.

jloehr commented 9 years ago

The XUSB/Xinput support will be primarily for the Wii U Pro Controller and Classic Controller (Pro). For the Wii Remote and Wii Remote with Nunchuk i don't know exactly yet. Two are going to be used as right Thumbstick and the others as buttons on swipes. The problem is there are not enough inputs to serve all inputs of a Xbox 360 Controller. However i am planing a custom mapping functionality for the advanced Configuration Tool, so everyone can map it themself.

larsiusprime commented 9 years ago

I see; Using the DolphinBar in "mode 3", which makes the inputs map to a joystick, you can't get the full range of motion sensing input, so I was wondering if there was a similar limitation with XInput. But it makes sense for the classic controller.

mirh commented 8 years ago

Why adding complexity to the driver? Wouldn't x360ce work just fine?

jloehr commented 8 years ago

Complexity for the driver means, simplicity for the user. Currently the user needs two separate programs/drivers to get XInput support. When XUSB support is added the user just needs one.

Additionally the main issue with x360ce is that you need to replace files in your game directory. That breaks support for normal XInput Devices. Furthermore if one game isn't working the user has to report a bug and needs to wait until the dev fixes the game compatibility.

mirh commented 8 years ago

Mhh, makes sense. I wonder if you couldn't inspire yourself by looking to https://github.com/nefarius/ScpToolkit/

Hell, I'm even dreaming of a common framework now.

jloehr commented 8 years ago

I already know the SCPDriver and took a look at their code. Their Kernel Mode driver is implemented using the WDM, whereas i am trying to stick to the WDF.

mirh commented 8 years ago

Well, if it has no limitations in this compass I guess it's a neater thing. But I'm pinging @nefarius nevertheless hoping he feels chatty.

nefarius commented 8 years ago

I'm always chatty =3