-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gyro emulation #19
Comments
Other branch changesBesides the M+ support the "input" branch differences are
|
:P I've got a problem with the newest build and settings. It looks like the motion plus actually works, but when i play Zelda : SS with the newest build i can't press Z button on nunchuk, which is required at the beginning to look at the guy and talk with him, so i can;t continue playing. On configuration it actually glows red when i press assigned by me button to the nunchuk Z (L-CTRL), but it doesn't work in game. Also, I had many problems with running the newest build of motion plus. Almost on every version of dolphin 3.5 emulator i had white screen when i tried to launch a game, and after few seconds a thing popped up saying : dolphin stopped working... (without motion plus it doesn't happen). On older build everything works fine except that the game freezes in place after around 10 minutes of playing (not counting long cutscenes/movies), and if you load a saved state in the old build of motion plus, the next cutscene/movie you enter will freeze the game... so do not use save states (save if you know that the saving block is near, but the game freezes without :P) |
Nunchuk buttons
This is fixed Crash
Copy the dialog text because that reduce ambiguity about whether it's a crash message
copy the problem details
copy the call stack
because
State
Does this occur in the current build of this branch? |
Saving State thing doesn't occur in the newest build of motion plus... but even with the newest one, Z button on nunchuk doesn't work at least for me... about the text, gonna post it sometime tommorow |
Nunchuk buttons
It's fixed in input_64_2013-06-23_15-00-55.039077900_+0200.zip |
oh nice.. i didnt try it out.. gonna check other problems too |
chcked it for 2 hours of intense playing of Zelda SS, Works nice, No White screens, Nunchuk Z working and no freezing after 10 minutes of playing, or after loading a save state.. everything works nice, good and there are actually no problems.. i configured it so good, then i use my mouse as a sword in TLoZ SS without any problems and it goes purely as i point it :D Thanks for letting us all play this fantastic game on dolphin :D The only problem is the build of dolphin... before i could run Zelda SS without any problems on 30 fps all the time.. never slowing down.. and now i run it at 30 fos only sometimes, and mostly on 25 fps which is a big slow down of the music and audio too :P Hope they repair it, and you will make a new compatibility version of motion plus then :D good luck on your hard work ! |
found another prob : after 3 hours of intense playing, the game freezed, and now freezes after just 5 minutes of playing. You can just make a savestate, but you know.. it's annoying anyway. |
HangCall stackWhen a process is hanged
ProfileDetermine the hang location from a profile analysis select
Do this after the call stack is copied because
SymbolsIf symbols aren't loaded automatically for Dolphin.exe because Dolphin.pdb isn't in the same path load the symbols manually
|
:P it doesn't just freeze.. .even a communicate comes up that dolphin stopped working.. not only the emulated game but everything... i also discovered that the problem occurs if you play one and the same save state for 30 min. then it freezes... and every other try to play form the save state (not the same but all others) makes game freeze after 5 minutes then... Problem can be solved by starting a game by saving on a bird statue and loading form then without save states.. then game doesn't freeze, and you can use a save state to play for the next 30 minutes again :D Anyway i used a save state once so i wont have problems with it as i dont like save states... you know.. its like cheating... |
Crash
If the "Dolphin has stopped working" dialog is shown
|
ok... fixed the problem ( i don't know how.. it was just periodical... kinda looks like it was). But now... ive got some questions : 1. Dolphin team made some optimalization workout which makes games again running smooth on 30fps. Will you make a version of motion plus for the new version ? 2. Why don't you suggest dolphin team to add the motion plus you are making to dolphin ? It would make it much easier to play game which requires it... :D Awaiting your answer and have a good day :) |
Rebase with master
Which commit are you refering to? The base of input@john-peterson can be seen at https://github.com/john-peterson/dolphin-emu/commits/input There are currently merge conflicts described in #3 (comment) Merge status
It's suggested that these patches are merged One reason that the patches aren't merged is that these persons haven't approved the
|
Do you think that Dolphin Team will ever make their own Motion Plus "expansion" for dolphin, or they will merge your version of it with their builds of dolphin ? |
It might be a stupid question, but how do you install this? |
Hey the dropbox link isn't working :( |
Well, you maybe should wait some time, because it's temporarly disabled... :-/ |
More information for error 509
I've asked for more information about error 509 at john-peterson/dropbox#4 |
Hi JPeterson. Did you uploaded your Builds on another profile or still temporarily disabled on dropbox? |
no
it's dropbox fault described at https://blog.dropbox.com/2014/05/web-vulnerability-affecting-shared-links/ i fixed the url now |
Ok! Thank you! |
there's no gyro position
there's no gyro position, the gyro values goes to 0 when the wiimote is still the accelerometer give an orientation value even when it's still gyro settle
gyro settle control how fast (high value = slow settle) the gyro values goes back to 0 when input is unchanged |
zelda
i dunno
i dunno
u can find the answer because u can control them (gyro, acc and ir) independently and see what happens |
code
acc data is read in Wiimote::GetAccelData in https://github.com/john-peterson/dolphin-emu/blob/input/Source/Core/Core/Src/HW/WiimoteEmu/WiimoteEmu.cpp, gyro data is read in Wiimote::GetExtData in the same file, swing and tilt input is read from GetState swing affect the accelerometer and not the gyro, tilt affect the accelerometer and the gyro if u wanna change how acc data is affected by tilt input u would do that in Wiimote::GetAccelData
i'm swamped right now, i'll let someone else answer |
gyro emulation
files
file/dolphin and image/dolphin contain
gyro log
the gyro log output
emulated input
gyroscope and accelerometer input
https://github.com/john-peterson/dolphin-emu/blob/input/Source/Core/Core/Src/HW/WiimoteEmu/WiimoteEmu.cpp
in the input settings
Settings
Axis mouse input
Relative mouse input (called "Axis" in the mouse input configuration) should be used because that allow mouse movement input regardless of where the system cursor is compared to absolute input (called "Cursor" in the input configuration) who's input won't change when the cursor is at the screen edge
Range
Range, Gyro Range and Acc Range multiply the output by 0.01 x to 10 x (by setting its range 1 to 1000). The fast modifier activates the gyro fast mode for all three rotation directions, the fast and slow mode is explained here
gyro settle
https://github.com/john-peterson/dolphin-emu/blob/input/Source/Core/InputCommon/Src/ControllerEmu.h#L491
gyro settle determine after how many frames the gyro will return to zero after the wiimote stop moving (the wiimote is constant but not necessarily nonzero)
a high setting, for example 9999, will keep the gyro in constant motion if input is nonzero
Mouse and keyboard
Gyro Sensitivity: 200 works with a standard sensitivity mouse
IR sensitivity: 20 to move the vertical accelerometer position relatively slowly.
Gamepad
Gyro Range: 0.1 provide smooth aiming and a smooth cursor, the range modifier is set at 1000 (10x)
If the Gyro Range is 0.2 the Range modifier should be 500 (5x) to reach 1.0 with max input
Zelda SS
Moves
Swing sword left/right: yaw left/right
Swing sword up/down: pitch up/down
Stab attack: thrust forward + show IR
Spin attack left/right: yaw left/right + nunchuk thrust in any direction
Land/water spin attack up/down: pitch up/down + nunchuk thrust in any direction (or wiimote thrust forward/backward + nunchuk thrust in any direction)
Skyward charge: pitch accelerometer back (gyro range must be lowered enough that it doesn't trigger a swing)
Fatal blow: lock on enemy + wiimote thrust forward + nunchuk thrust forward
Shield: nunchuk thrust in any direction
Roll: dash and nunchuk thrust in any direction
Leap on vine: Nunchuk stick left/right + tilt fast left/right
Balance on the tightrope: Strong yaw input (slow 0.5+ or fast 0.1+)
Key binding
Have the Gyro Range low by default, for example 0.1, to control the cursor and view, and assign a 10 x (range 1000) Gyro Range modifier to a gamepad trigger (or keyboard button or analog stick button) and hold it to perform fast moves; slash sword, leap on vines, swing on rope, shake rope etc.
On the gamepad, bind roll and yaw to the same axis, roll and yaw is used independently in rare occasions only (the boss key for example) so it doesn't hurt, and lets you control the bird or the beetle that use roll.
Use the
| OR
option with the modifier keys and moves that require multiple input. For example assigningA|B
to yaw left and B to Nunchuk thrust makes A yaw left and B do the spin attack."Hide IR" should be enabled (and Thrust forward and B should be bound to IR→ Show) because IR restrict horizojntal cursor movement and doesn't have rotation use besides resetting the gyro rotation matrix forward direction
FAQ
Q: Why's the aiming or cursor sensitive
A: Lower the sensitivity setting
Q: Why's the aiming or cursor jumpy
A: Disable Tilt accelerometer input with "Acc. Range"
Q: The cursor is locked along the horizontal axis
A: It's because the cursor can't go to the edge of the screen if IR is visible, turning off IR solve that. Without IR data, 45° yaw move the cursor from one edge of the screen to the other, if additional yaw is applied to cursor move along the screen border
Q: The cursor drift vertically to the center (doesn't affect aiming mode)
A: Too little accelerometer pitch is applied because the IR pointer position is not at the end of the screen, possibly because of too low IR sensitivity, the IR implied pitch code is here, as the IR is pointing at the end of the screen (mouse input -1 or 1) the pitch is pi/4 rad (45°).
Q: Why is the item selection cursor difficult to control?
A: Bind "Thumb R" or B to "Gyro Range 1" that's set to 1000 (10× multiplier) so that adequate gyro range is applied when selecting item. Because the item selection cursor work the same way as the map cursor so that good IR position data control it. Without IR data a 360° degree pitch rotate the cursor past the whole item circle. In the example gamepad configuration and bound to
Q: Why's the Bird, the Beetle and Swimming hard to control? Sometimes the unit moves sideways on its own.
A: Showing IR (that you may have set to the stab attack key) makes these controls easier, just showing IR for for a moment (at the center of the screen position) will reset the gyro rotation matrix so that the unit swim or fly straight again. To gain altitude with the Bird repeatedly dive and immediately call the Bird.
Q: Why is it hard to rotate the sword to enable the Skyview Temple Eye Switch?
A: A perfect circle can be created without IR data but IR data is important to reset the gyro rotation matrix forward direction
Q: How do I reset the sword neutral position (gyro rotation matrix)?
A: Show IR for a moment
Q: How do I pull the Goddess Sword out of the stone in the Goddess Statue?
A. Tilt 90° (full tilt input at 100 acc. range) downward and thrust backward
Red Steel 2
Moves
Swing sword left/right: yaw left/right
Swing sword up/down: pitch up/down
The text was updated successfully, but these errors were encountered: