Dolphin, the GameCube and Wii emulator - Forums

Full Version: (Unofficial) Rebased Wii MotionPlus build
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6
Well, the only approach I think that could work barely well for end-users trying to emulate Motion Plus games in conventional controllers (e.g. keyboard/mouse, Xbox 360 Controller, etc) would be "recording" the movements from a real Wiimote with Motion Plus to a file/macro/whatever then allowing the user assign that recorded movement to a key or button. But all of that is just in theory, actually implementing that would have it's own challenges since every Motion Plus game uses the sensors in different ways, there would be also the challenge of recording complex movements and the likes...
I've given this a lot of thought, and um, there is no way we're going to support any of that. In no way is setting movements and actions to buttons can be a thing in emulated wii motion plus. Because, quite simply, it would be terrible. It would be a UI and control disaster, only a few games would be supported (skyward sword and... skyward sword), and it would play absolutely nothing like the original game.

The only reason Wii Remote emulation in the "assign a gesture to a button" form works at all is because game devs often felt like they needed to add motion to their game and just took an existing action and had motions turn it on. For example, if a game decides that any input on a specific axis triggers a predefined sword slash movement (Twilight Princess Wii), you can replace that with a button and it will be flawless! However, any time multiple axis are combined in true motion controls, like Wii Sports, it will completely and utterly fail.

And guess how all Motion Plus games use it? Yep! Combined multi-axis movement for true motion controls. Because it was optional, only games that wanted to do genuine motion controls ever picked up the feature. Assigning motion plus controls to a button will never, ever work.

There is a way however for proper Wii Remote emulation and Wii Remote Plus emulation to be achieved, and it's actually rather simple, it just requires that we leave the gesture to button concept entirely. All we need to do is expose the accelerometer and gyro axis' in the UI. That's it! Then, a user can map them to a compatible control with similar hardware, like virtual reality controllers, and it will work. This also solves the future-proofing issue of Wii Remotes disappearing, since as long as there is virtual reality, there will be controllers with accelerometers and gryos for users to use with Dolphin. Simple. And it gives an accurate emulation of the original gameplay!


Of course that requires giving up the dream of playing Skyward Sword on traditional gamepads, but um... that will never be enjoyable, and if we do it by this method we can support ALL games and ALL motion controls in an accurate and future-proof way!
I'm not aware of any API outside of VR APIs that allow us to map gyros.

However I do agree that mapping a gyro is the cleanest, and futureproof way of going about this.
I'm pretty sure that modern VR motion controllers don't actually have gyroscopes/other specific sensors that MotionPlus has. They wouldn't need them once all of the position tracking malarky is present as that should also give rotation information. OpenXR might well guarantee that there's simulated gyro data available in the absence of real gyro data, but the only way to guarantee we have all the sensor data we need may well be to generate it based on something we know OpenXR can give us - the position and orientation of a controller at any given point in time.

OpenXR is also unlikely to give us a mouse cursor position that we could use to have a motion controller drive the Wiimote IR cursor, but given that a lot of VR software uses a similar input method, there's definitely raw data that could be used to derive it. I'm certainly of the opinion that we shouldn't expose any motion control mapping directly to the user, and should keep everything nice and simple for the user so that Dolphin just asks OpenXR where the 'Wiimote' is and we tell the game what the 'Wiimote' reports.
AnyOldName3 Wrote:I'm pretty sure that modern VR motion controllers don't actually have gyroscopes/other specific sensors that MotionPlus has.

https://www.vrheads.com/exposing-magic-behind-htc-vive-controller
Quote:Motion tracking is aided by InvenSense's MPU-6500 Six-Axis, which integrates a 3-axis accelerometer and a 3-axis gyroscope into a single unit.

https://www.ifixit.com/Teardown/Oculus+Touch+Teardown/75109#s152156
Quote:Invensense MP651 6-axis combo gyroscope and accelerometer

The headsets themselves have them too, and even the PS Move controllers have them. Motion Controls have to have internal motion sensing to work! External sensing iiisssn't very precise.

AnyOldName3 Wrote:OpenXR is also unlikely to give us a mouse cursor position that we could use to have a motion controller drive the Wiimote IR cursor

Touchpads are on the HTC Vive Controller and are coming to Oculus in the new "Santa Cruz" controller. That would easily replicate the wii remote pointer. For something more authentic, the pointer could be emulated using the motion controls themselves (like Splatoon), and it would just need a button for the user to set/reset it.
To anyone that want to play Skyward Sword on a gamepad: don't listen anybody that say it's not working! They clearly don't know what they're talking about. Since Dolphin 3.0 by J.Peterson, you can easily complete this game at 100% without any problem. You can also finish it with this new version 5.0. Unfortunately, I don't recommend this one.

One of the reasons (biggest problem), is that there's missing something really important from the 3.0:
- A hotkey to Enabled/Disabled Hide IR with a litle message that appears to say it's enabled or disabled.

So if there's someone that can add this, it will be really appreciate.
(04-19-2018, 12:13 PM)Pseudo2018-000 Wrote: [ -> ]To anyone that want to play Skyward Sword on a gamepad: don't listen anybody that say it's not working! They clearly don't know what they're talking about. Since Dolphin 3.0 by J.Peterson, you can easily complete this game at 100% without any problem. You can also finish it with this new version 5.0. Unfortunately, I don't recommend this one.

One of the reasons (biggest problem), is that there's missing something really important from the 3.0:
- A hotkey to Enabled/Disabled Hide IR with a litle message that appears to say it's enabled or disabled.

So if there's someone that can add this, it will be really appreciate.

Did you actually TRY to complete it yourself on 3.0 or this new version? It is NEIGH impossible to do the needed motions correctly. People that SAY they have completed the game 100% on Dolphin are either lying or are using save games ripped from a real Wii (U) to get past certain sections. On 3.0 the game simply wasn't even completable because of certain game breaking bugs (locking/crashing) which AFAIK only have been fixed somewhere into the 4.0 era.
@ mstreurman:
I don't try to complete it on 3.0. I complete it at 100% without any problem, you just need 3 things:
1-the good version 3.0 of Dolphin (J.Peterson), not the 3.5 version that isn't working
2-a good profile
3-a tutorial for the profile

I finish it with a gamepad some years ago, it was just awesome! I don't use save from the wii. Like I said the important thing is the option Hide IR, there are some very little part in the game that you need to turn it on.
Technically in 3.0 I think you could complete the game with OpenGL if you saved often to get around the crashes. D3D9/11 would outright crash on certain parts of the game 100% of the time though.
(04-20-2018, 04:41 PM)JMC47 Wrote: [ -> ]Technically in 3.0 I think you could complete the game with OpenGL if you saved often to get around the crashes.  D3D9/11 would outright crash on certain parts of the game 100% of the time though.

I don't know which build you had the crashes. But for the 3.0 (by J. Peterson), I used the default settings (Direct 3D9). Skyward Sword is a long game to finish and I never had a crash or saw a bug. So, it's a nice stable version.
Pages: 1 2 3 4 5 6