Fixing input delay on PC version


#1

Hi guys, this isn’t exactly an SFV-specific question but this is the only fighting game I really play on PC, so.

I normally play on the Steam version and have experienced lots of trouble reacting to things due to input delay. I didn’t really notice it was a problem until I played my friend locally on his PS4 setup which had much less input delay if any.

My question is, what can I do if anything to get the delay down? Thanks in advance.


#2

This site (which is owned by Four Wude, the SF player) has some good tips for reducing input lag. It’s based on SF4 but almost everything can be used to reduce lag in SF5 too:


#3

notice that you must use vsync with SF5 (otherwise the game will run too fast), but it’s up to you which variant you wanna use. the game itself already uses the Unreal Engine 4 vsync implementation. if you don’t wanna trust in that, you can disable it by going to the following directory


c:\Users\*Username*\AppData\Local\StreetFighterV\Saved\Config\WindowsNoEditor\

and open the Engine.ini and add the following lines


[SystemSettings]
r.VSync=0

make the file read-only afterwards and you’re good to go.

like the guide Clamper posted suggests you should also set the number of max prerendered frames in your GPU driver to the lowest allowed value. the tool D3DOverrider is outdated and doesn’t work anymore with newer DX applications and was only useful if you couldn’t hit max framerate on your system to begin with. so if you have a nvidia GPU I’d suggest using adaptive vsync.

overall the difference between various vsync methods is only 1 frame and depends if double oder triple buffering is used. that’s something the human perception can’t really distinguish though. so if you really noticed a clear difference between PS4 and PC it’s more likely to be caused by your pad/stick, the mentioned max prerendered frames setting or even your display.


#4

Shouldn’t we on PC just be trying to match the PS4?


#5

Are you by any chance using a Dinput stick on PC? ( basically a a PlayStation stick ) Using an input wrapper like Inputmapper to use a PS stick on PC causes a noticeable input delay. I found that myself when using my DualShock 4 to play Spelunky. I use an Xbox One TE2 to play SFV on PC and its perfect.


#6

What Mackers said. Barring any input control translating software you shouldn’t even be feeling input lag.

The only noticeable input lag reduction you can try otherwise is to disable vsync outright. It won’t speed up your game (contrary to what the other poster said) as there’s an actual frame limiter in effect aside from it.

Otherwise you’d have to use an xinput controller until the dinput patch comes.Try out x360ce since different wrappers incur different amounts of lag and that one may be better.


#7

Disabled V-Sync with your method then applied Adaptive VSync in my Nvidia Control Panel. Played a few and it was causing bad screen tearing and input lag.

Set it back to default and was fine again. It might work for more powerful PC setups but I wouldn’t suggest doing this in my opinion.

Also using programs to get the game to recognize your stick will definitely cause higher input latency but it might not be noticable on some pc’s that are properly setup or powerful.


#8

If using an Nvidia GPU set pre-rendered frames to 1 if it’s not in 3D settings.
PC version for me with vsync on feels exactly the same as PS4.


#9

Did you disable the vsync like described above, or leave the game’s native vsync enabled? Did you use Adaptive of normal Vsync?

I already have pre-rendered frames set to 1 by default for all my games.

I got noticable screen tearing and input lag when I did what was suggested by sp00kyfox.


#10

Games vsync enabled, I notice no difference between PC and PS4


#11

this isn’t correct. the game only limits the framerate in online matches, in training or against AI it doesn’t if you disable vsync. you must disable vsync though with the ini modification I described. disabling it in your GPU driver has no effect on the game.


#12

Yeah I left the game’s default vsync enabled and it feels the same as PS4 version. I do use 1 pre-rendered frame setting in Nvida control panel and I don’t enable vsync in my Nvidia control panel.


#13

We need real science and testing. I want to know what the settings are to have PS4 match PC to a tee input lag wise.


#14

lol?

I’ve been running with r.VSync=0 since forever. The game has an FPS lock in place still. You want proof? Do it yourself. There’s separate .ini settings to disable/modify the FPS limit. I will show an example below.

Adaptive v-sync only enables v-sync when the game is hitting 60 FPS or more.

This game (with default FPS lock) isn’t hitting 60 FPS or more but rather 60 FPS or less. The distinction is important because it’s the difference between adaptive v-sync detecting performance and enabling/disabling v-sync. In this case, v-sync is rarely getting enabled and you see frame tearing as a result.

To get adaptive sync to work properly, you need to force the FPS limit off or increase it.

To turn it off:



[SystemSettings]
r.VSync=0
[/Script/Engine.Engine]
bSmoothFrameRate=false


Or to increase it:



[SystemSettings]
r.VSync=0
[/Script/Engine.Engine]
bSmoothFrameRate=true
SmoothedFrameRateRange=(LowerBound=(Type="ERangeBoundTypes::Inclusive",Value=60),UpperBound=(Type="ERangeBoundTypes::Exclusive",Value=60))


Where you substitute the bolded value in UpperBound=(Type=“ERangeBoundTypes::Exclusive”,Value=60) with something higher than 60. I also recommend changing the lower bound value to 5 as it helps out people with borderline performance a bit.

This will speed your game up but if you have a 60hz monitor and enable adaptive sync it will be forced down to 60 with no tearing.

The above procedure of disabling the FPS limit and enabling adaptive v-sync through the NVCP is actually a good way to reduce the severity of frame drops on crappier PC’s. The game will run full speed as normal but when you drop frames, instead of slowing the whole game down to 30 FPS momentarily with regular v-sync, v-sync will temporarily turn off and you will only drop a few.

People on 144hz/non-60hz monitors should just be disabling v-sync. The tearing is not as apparent on the higher refresh rate and input lag is way better. Alternatively they can run on 120hz mode or some other even multiple of 60 to use with any v-sync method.


#15

I’m gonna try your method, sounds legit. Thanks for the info


#16

well guess what the source of my information is. so before you say that I’m wrong how about following your own advice and you’ll see.


#17

What worked for me was dumping x360ce and using Xpadder instead.


#18

Just a heads up, I forgot to put the appropriate header lines into the .ini so what I posted yesterday wouldn’t work. I corrected it so it should be working now.

Dude, the game doesn’t unlock FPS from 60 if you just disable v-sync. Do you think people with 144hz monitors are running the game at 144 fps because that’s what v-sync syncs their performance to? That’s how it works in other games but this game has a 60 FPS lock by default, v-sync or no v-sync.


#19

confirming that i have vsync off on a 144hz and the game runs at 60 frames. on the subject of PC and ps4, i feel way more lag on ps4.


#20

Are you using an xbox controller? Or are you using a 3rd party or ps3 / ps4 controller?

If you are using a 3rd party / ps3 / ps4 controller try using a different input mapper. For my the x360ce is great, but you may find trying a different program can change the input delay.

Input delay is very important in a fighting game.

Ironically I have the same issue on my ps4, where my inputs are delayed a lot. I think this has to do with my tv though, as it is not a good quality TV, and low quality hd tv’s have bad latency haha.