Project

General

Profile

Actions

Emulator Issues #5981

closed

Force feedback effects causes lag in F-Zero GX

Added by Isamu99 over 11 years ago.

Status:
Fixed
Priority:
Normal
Assignee:
-
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

Have you searched the issue tracker for a similar issue? Yes

Game Name? F-Zero GX

Game ID? F-Zero GX for Game Cube

What went wrong? Lag caused by force feedback to my wheel in F-Zero GX

What did you expect to happen? Smooth gameplay with ffb enabled

What steps will reproduce the problem? enabled effects "Constant, Sine, Ramp, Triagnle, Square, Sawtooth Up and Sawtooth Down" in the Dolphin pad plugin "motor" menu

What version of Dolphin were you using? 3.5-368

64 or 32 bit Dolphin? 64

What version of Dolphin used to work? None prior to this.

What Operating System were you using and what are your hardware
specifications? Windows 7 64bit Ultimate | Intel Core i7 950 OC'ed @ 4.0Ghz | Nvidia EVGA FTW GTX680 6GB | ECCI 7000 FFB Steering Wheel(High quality ffb wheel with very a strong and powerful DC Brushed motor(ie 20 NM of torque power) )

64 or 32 bit Operating system? 64

Any other relevant information or links to logs:

To Skid, Uloa, Billiard, etc....

I discuss this issue in this thread starting from post #31:

http://forums.dolphin-emu.org/Thread-dolphin-s-pad-plugins-wow-but-no-rumble-support?pid=261111#pid261111

The crux of the issue appears to do with the rate at which the ffb effects are being sent to my steering wheel. There seems to be too much information being sent at once and my wheel is not interpreting the signal fast enough, causing the whole emu to lag. An option to "throttle" the ffb effects in step intervals would most likely eliminate the issue. Please follow up by reading my post #31 in that Pad Plug-in thread to get a better idea of what's going on.

Thanks guys and keep up the good work :)

Actions #1

Updated by skidau over 11 years ago

Remove all of the effects except Constant. Change the pulldown on the top left hand corner to the DInput version of your controller. In the GameCube tab under Port 1, select "Steering Wheel". Now start the game. Your steering wheel should respond with real force feedback effects.

Actions #2

Updated by skidau over 11 years ago

Does the issue continue to occur with just Constant selected as the only effect?

Actions #3

Updated by skidau over 11 years ago

Does the issue occur if you change the framelimit to 30?

Actions #4

Updated by Isamu99 over 11 years ago

Hello and thank for the reply Skid. OK here's an update:

I took your suggestion and removed all effects except constant(the other things you mentioned ie DInput, etc had already been done). The game no longer lags with only constant... however it delivers unnatural ffb to the wheel. For example instead of centering the wheel properly, it actually does the opposite and pulls the wheel to left or right side depending on which way I slightly steer it, as if the centering forces are reversed.

Furthermore, it doesn't feel like all the effects are there. Are all the effects supposed to be there with only constant enabled?

Here's the strange thing though skid....if I remove constant and use ONLY ramp and square, the ffb effects appear to feel more natural and in tune with how I would imagine F-Zero to feel on the real GC when using the Speed Force Logitech wheel. It centers properly and the vibrations are there, and there are no lag issues. But I would still like to be able to enable all the effects at once for true and proper ffb effects.

As for limiting the framerate to 30, I did this just for the heck of it, and ran the game. The game STILL lags and drops frames even below 30 upon any vibrations being sent to the wheel using constant together with ramp, square, etc. Plus obviously playing at that fps isn't ideal anyway, as it's a terrible experience.

Hope this helps mate :)

Actions #5

Updated by skidau over 11 years ago

Yes, that did help and the results are thankfully good.

Constant is the only force that Dolphin sends the force feedback effects to. The other effects are not properly emulated. Do NOT use any other effect other than Constant when an emulated steering wheel has been selected under Port 1.

Your observation that it pulls the wheel in the opposite direction shows that the driver of your wheel does not match the one that Logitech uses for their PC wheels. What I will do is to add a checkbox to reverse the direction of the force to fix the force feedback.

Actions #6

Updated by Isamu99 over 11 years ago

Hi skid... thank you for the clarification, that is very interesting info. I was unaware of Dolphin being designed to send only constant effects when using the wheel option. If that's the case then I will just use constant once you upload that new build with the fix. But with that having been said, if constant is the only one that Dolphin supports when "steering wheel" is activated, why are the other force effects listed and available to use? And why does ramp and square work while the other ones cause lag?

Anyway looking forward to that build with the constant fix :)

Actions #7

Updated by skidau over 11 years ago

The other effects are for people without a proper force feedback wheel, i.e. for users that use XBOX360 gamepads and such.

Actions #8

Updated by white.phoenix over 11 years ago

by "causeing the whole emu to lag" do you mean input lag from the steering wheel or the emu doesn't run 100% speed anymore? if it's input lag, then Revision bc35764ec216 may have fixed it (try a newer build, 368 did not include this fix AFAIK)

Actions #9

Updated by Isamu99 over 11 years ago

@white

Not input lag. But slowdown framedrop lag.

Actions #10

Updated by Isamu99 over 11 years ago

Hi Skid. I was just checking in to see if you'd gotten around to submitting this fix and whether or not it is on the website's buildbot page http://dolphin-emu.org/download/list/master/1/

?

Actions #11

Updated by skidau over 11 years ago

isamu, no, not yet. I'll update this issue when I have.

Actions #12

Updated by skidau over 11 years ago

  • Status changed from New to Fixed

This issue was closed by revision 1792a9d27b0f.

Actions #13

Updated by skidau over 11 years ago

isamu, to fix the force feedback for your wheel, use the latest revision above and select -100 as the range for the Constant force.

Actions #14

Updated by Isamu99 over 11 years ago

OK I will test it out a little later and report back. Thanks skid :)

Actions #15

Updated by Isamu99 over 11 years ago

Well I don't know what to say skid....you are simply a GENIUS!!!!!!!!!!

                                  IT WORKED BUDDY!!!!!!!!!!!!!!!!!!!!!!!!!!! 

Can't tell you how much I appreciate this mate! Constant force now works properly with proper spring direction and lag!!! Man, Skid, does the force feedback feel better than ever!! I mean it!!

When I first brought up the topic of ffb support a couple years ago in that thread, I remember Billiard saying he would someday fix the ffb effects to work with steering wheels properly. Fast forward to 2013 and voila, skid came to the rescue! The previous way of playing F-Zero GX on earlier Dolphin builds, was I had to use the x360ce.exe controller emulator, so that the game thinks my wheel is a 360 pad, then tweak the ini file to get some steering center spring resistance. It also supplied some rumble to my wheel but nothing to write home about. The overall behavior was serviceable but not quite satisfactory.

Now however, it is an ENTIRELY different ballgame! The difference is night and day! The wheel now feels like TRUE force feedback...that real, strong Sega trademark ffb that you feel on real arcade cabinets like Daytona USA and Sega Rally. Collisions effects are extremely well done, and with the kind of wheel I have, because the motor is stronger than the actual Sega ffb arcade wheels, it literally feels like I'm playing on a real cab. A far cry from before when playing via the x360ce app.

Skid, you are the MAN! Can't thank you enough mate. Let me know if you ever come to LA I'll buy you a drink :)

Now if I can simply figure out how to stop the damn game from crashing when "dual core" is checked and I'll be golden!

Actions #16

Updated by skidau over 11 years ago

This issue was closed by revision 1792a9d27b0f.

Actions

Also available in: Atom PDF