Project

General

Profile

Emulator Issues #11852

30fps games lose sync when using 60hz displays (stutters/frame pacing issues)

Added by Tasoulios 8 days ago. Updated 8 days ago.

Status:
New
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

Game Name?

Super Mario Sunshine, Zelda Windwaker

What's the problem? Describe what went wrong.

When playing a Gamecube game that is 30fps on a 60hz screen, there is noticeable stutter (that lasts a couple of seconds) every about 10-15 seconds of smooth gameplay. Looks like there is a loss of syncing. 60fps games sync properly. 30fps also sync properly if you use 30hz as your display rate. But 30fps lose sync at 60hz.

What steps will reproduce the problem?

Just play Super Mario Sunshine or Windwaker on a 60hz screen. Probably more/all 30fps games will have this issue.

Is the issue present in the latest development version? For future reference, please also write down the version number of the latest development version.

I'm using 5.0-10772 atm but this issue is also present with some backup builds i have that are about a year old or more. I don't know if there is an older version that doesn't have this.

What are your PC specifications? (CPU, GPU, Operating System, more)

Main PC - i5 4670, GTX 1060 6GB, Windows 7 and 10 (dual boot), 16GB RAM
2nd PC - Core 2 Duo E8500, GTX 650, Windows 7, 4GB RAM

**Is there anything else that can help developers narrow down the issue?

Here is a list of things i tried to fix the issue:

  • Played on Windows 7 (older drivers) and a DELL 240hz PC monitor at 60hz.
  • Played on Windows 7 (older drivers) and a Samsung TV at 60hz.
  • Played on Windows 10 (new drivers) and a DELL 240hz PC monitor at 60hz.
  • Played on Windows 10 (new drivers) and a Samsung TV at 60hz.
  • Played on Windows 7 having both displays connected but using the a DELL 240hz PC monitor at 60hz. Did the same on Windows 10.
  • Played on Windows 7 having both displays connected but using the Samsung TV at 60hz. Did the same on Windows 10.
  • Tried all back-ends with all displays/OS combinations above.
  • Tried changing the v-sync and full screen/borderless options with all displays/OS combinations above.
  • Tried changing some options in the hacks tab (this time i got tired changing OS/displays so i tested on the DELL monitor and Windows 10)
  • Tried changing the dual-core option.
  • Tried using the overclocking option.
  • Tried disabling the Ubershaders or using different options.
  • Tried playing with the Nvidia drivers options (power management, native v-sync, maximum pre-rendered frames, etc)
  • Just for fun i tested on an old Core 2 Duo + GTX 650, on an old 4:3 LCD monitor at 60hz and there was the same behavior.
  • Locked Dolphin's frame rate at 30fps using RTSS/Afterburner (while native screen hz is 60). Still getting those stutters despite the frame pacing line being perfectly straight.
  • Tried the Ishiiruka build.
  • Disabled cheats and every single hack from the hack tab (instead of picking different combinations).

Nothing works. 30fps games will always lose sync consistently when playing on a 60hz screen. Even using a combination of 2 different PCs, 2 different Operating Systems and 3 different monitors.

History

#1 Updated by Tasoulios 8 days ago

Game Name?

Super Mario Sunshine, Zelda Windwaker

What's the problem? Describe what went wrong.

When playing a Gamecube game that is 30fps on a 60hz screen, there is noticeable stutter (that lasts a couple of seconds) every about 10-15 seconds of smooth gameplay. Looks like there is a loss of syncing. 60fps games sync properly. 30fps also sync properly if you use 30hz as your display rate. But 30fps lose sync at 60hz.

What steps will reproduce the problem?

Just play Super Mario Sunshine or Windwaker on a 60hz screen. Probably more/all 30fps games will have this issue.

Is the issue present in the latest development version? For future reference, please also write down the version number of the latest development version.

I'm using 5.0-10772 atm but this issue is also present with some backup builds i have that are about a year old or more. I don't know if there is an older version that doesn't have this.

What are your PC specifications? (CPU, GPU, Operating System, more)

Main PC - i5 4670, GTX 1060 6GB, Windows 7 and 10 (dual boot), 16GB RAM
2nd PC - Core 2 Duo E8500, GTX 650, Windows 7, 4GB RAM

Is there anything else that can help developers narrow down the issue?

Here is a list of things i tried to fix the issue:

Played on Windows 7 (older drivers) and a DELL 240hz PC monitor at 60hz.
Played on Windows 7 (older drivers) and a Samsung TV at 60hz.
Played on Windows 10 (new drivers) and a DELL 240hz PC monitor at 60hz.
Played on Windows 10 (new drivers) and a Samsung TV at 60hz.
Played on Windows 7 having both displays connected but using the a DELL 240hz PC monitor at 60hz. Did the same on Windows 10.
Played on Windows 7 having both displays connected but using the Samsung TV at 60hz. Did the same on Windows 10.
Tried all back-ends with all displays/OS combinations above.
Tried changing the v-sync and full screen/borderless options with all displays/OS combinations above.
Tried changing some options in the hacks tab (this time i got tired changing OS/displays so i tested on the DELL monitor and Windows 10)
Tried changing the dual-core option.
Tried using the overclocking option.
Tried disabling the Ubershaders or using different options.
Tried playing with the Nvidia drivers options (power management, native v-sync, maximum pre-rendered frames, etc)
Just for fun i tested on an old Core 2 Duo + GTX 650, on an old 4:3 LCD monitor at 60hz and there was the same behavior.
Locked Dolphin's frame rate at 30fps using RTSS/Afterburner (while native screen hz is 60). Still getting those stutters despite the frame pacing line being perfectly straight.
Tried the Ishiiruka build.
Disabled cheats and every single hack from the hack tab (instead of picking different combinations).

Nothing works. 30fps games will always lose sync consistently when playing on a 60hz screen. Even using a combination of 2 different PCs, 2 different Operating Systems and 3 different monitors.

#2 Updated by Tasoulios 8 days ago

Sorry for the double post, i wanted to edit my bug report

#3 Updated by Techjar 8 days ago

Vsync is hard, because the GC/Wii actually run at 59.94 Hz.

#4 Updated by Tasoulios 8 days ago

So that means the real GameCube will have those stutters if i connect it on a 60hz modern TV? I never did this so i don't know.

#5 Updated by JMC4789 8 days ago

We could probably work-around this by implementing a 30/60 mode in Dolphin that very slightly speeds the game's up.

#6 Updated by Tasoulios 8 days ago

JMC4789 wrote:

We could probably work-around this by implementing a 30/60 mode in Dolphin that very slightly speeds the game's up.

It's weird though, 60fps games work fine (with only a very minor microstutter every now an then). But 30fps games stutter a lot every 10 seconds, it almost look like slowdown for a moment.

Anyway, a minor speed up option seems like a good idea. AFAIK, RetroArch does this and every system syncs perfectly. Though i tested the Dolphin core some time ago and it had the same issue there with 30fps games.

#7 Updated by JMC4789 8 days ago

Yeah, I think the monitors have something to do with that. I can't tell you. We're working on things that could fix this legitimately, such as automatically changing the monitor refresh rate in exclusive fullscreen mode, but Windows doesn't like that.

#8 Updated by Miksel12 8 days ago

I think this (still wip)PR should fix your problem: https://github.com/dolphin-emu/dolphin/pull/7803

Also available in: Atom PDF