Throttling FPS in windowed mode since 1.0.58982 released

Since the recent update a number of riders (me included) have noticed a huge drop in FPS compared to pre update.

It seems to flat line, which makes me wonder if something is throttling FPS somehow?

First screenshot from a WTRL race Tuesday evening, second from a solo ride around Paris last evening, both in Windowed mode.

Triple Buffering On
Vertical Sync Use the 3D application settings
95hz refresh rate, display port cable
Gsync enabled for windowed and full screen mode

edit can’t seem to add links or JPEGS!

At first I thought vsync was being forced on and gsync settings ignored.
However, it looks and feels like Zwift are running a custom dynamic framerate cap tied to monitors refresh rate, attempting to mimic vsync.

At 120hz I’m seeing random drops to 30fps for extended periods on empty roads - with a 3900x / 3080rtx.

1 Like

hi James, Yes I see something similar, ie last nights solo ride it flat lined half way thru to 30 fps on a RTX 2060 and Ryzen 3 3100 overlocked to 4.1 on a 95hz monitor!

I am getting this too since the last update, I use full screen mode though.

Tried everything and can’t stop this vsync behaviour in windowed mode.

It’s starting to annoy me being capped at 30fps while using one of the most powerful gaming machines money can buy.

I rode in Yorkshire yesterday and it was back to normal so speculating it is something to do with the French and Paris worlds.

I had similar problems in Innsbruck, only going up the climbs where there were a lot of trees and flowers/grassy sections.

Someone else mentioned the problem could be caused by all riders being displayed on the map all the time rather than just the nearest to you, so having to redraw so many riders all the time makes the GPU struggle.

I think this could be the case. Would make sense if Yorkshire was quieter too.

As mentioned above, are you still seeing this behaviour on other worlds or just France? Capping frame rates is maybe an attempt to make it less susceptible to crashing on lower-powered systems. I’m starting to suspect the way they thrashed it out in so little time tbh; maybe it causes stability issues for the whole game when it’s this busy.

Be nice if they explained any of this ■■■■, obviously.

With Gsync enabled I drop to <20fps when the Zwift window is active. This rises to a fixed 60fps if I tab out to another app. Reverse logic to what you’d expect.

With Gsync disabled I have either 30fps, 60fps or some value between 60 and 120 depending on visual load.

More info, that I suspect is related. On a fixed refresh rate display, enabling triple buffering normally allows the frame rate to drop below native refresh rate without screen tearing. Now it’s tearing. This is in full screen mode, so it’s not throttling as above. But a tried and tested config for Zwift no longer works.

Whatever’s been changed with regard to vsync behaviour is actively making the experience worse.

Further testing shows that the config requirements for Nvidia control panel are now flipped. Instead of enabling triple buffering and leaving vsync on the default ‘Use the 3D application setting’, you now need to actually force vsync on (triple buffering seems to be irrelevant now, but is still useful for preventing the frame rate becoming ‘stuck’), to get the same outcomes.

Why this has been swapped is beyond me. My guess is maybe they’re trying to enforce frame rate caps within the engine itself for whatever reason (rather than relying on vsync), which is messing with the experience for those with adaptive sync displays.

So I reckon the in-game vsync behaviour may have been changed from On to Adaptive (as defined by the Nvidia control panel - not the same thing actual adaptive sync/Gsync). This setup caps the frame rate at display refresh rate but allows tearing when below it. As opposed to hard dropping to 50% refresh rate, which is what Zwift used to do at default Nvidia settings.

Unfortunately this change is now creating a conflict with Desktop Window Manager, which enforces vsync on all windows. So I believe Windows itself is what’s capping the frame rate for people in windowed mode. Only solution at this time is to run Zwift in full screen mode (so Windows sees it as full screen exclusive and doesn’t interfere).

Great research, Dave.

1 Like

To add to the evidence, I usually get 59 FPS consistently in windowed mode with borderless gaming (I cap to 59 to avoid another horrible Zwift bug, rubber banding which occurs at 60FPS).

This was the state of my ride on Saturday, riding on my own in a small group in Richmond. FPS drops to 18FPS and sits there for most the ride.

I just wish Zwift’s changelogs logged changes.

1 Like

If you disable gsync those 18fps drops should disappear.

There is a related issue on the World selection screen in windowed mode. If you have rivatuner of similar running try moving the mouse - it drops from 120fps to <20fps. Something fishy is going on there too.

Yeah Gsync with windowed mode seems to be particularly wonky. Works absolutely fine for me still in full screen.

I wouldn’t be able to run full screen because I stream Zwift and use discord. I also use zwift hacks maps and Zwiftpower for race data. So yes only 25% is Zwift the rest 3rd party software.

I hope Zwift is working on the bug

They will see this in there race streaming production as well, so it is in there best interest to fix it.

Feels to me like they’ve made a change to some default vsync behaviour(s) without considering the impact on all the different variants of how the userbase runs Zwift. For the people who run full screen mode and never touch their Nvidia settings from default, and use a TV, the new update is probably better because there’s now no hard drop to 30fps when circumstances dictate. But obviously there are several other ways to run Zwift.

Of course all of this is completely undocumented, because there was never any indication whatsoever that anything like this was being changed. Users left to report the problems and try to figure it out, as usual.

2 Likes

Alas, vsync wouldn’t be an issue if a £2000 PC could give a constant 60fps in large blobs.

1 Like

You’ll need Zen 3 for that. :wink:

This is from a 450-strong Pack ride… just about stayed above.