Project

General

Profile

Actions

Emulator Issues #13084

open

Presentation Megathread - Vsync/ScreenTearing/Framepacing Issue

Added by JMC4789 about 1 month ago. Updated 30 days ago.

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

I'm tired of seeing dozens of issues about vsync/tearing/framepacing, so I'm going to compile the issues and requests here along with what information I've gathered.

Complaint 1: Monitor/Game framerate differences

The main complaint is that when using Vsync, framepacing isn't great on most monitors because Dolphin forces the game to run at the actual framerate it runs at. We could do something like mGBA and instead of running at the actual framerate the game wants, normalize it to 60 FPS (or whatever the monitor reports) in order to improve framepacing.

Complaint 2: Framepacing/rare stutters

Framepacing isn't great in general. As far as I know, Dolphin tends to prioritize latency over framepacing. There are some things we could do to improve framepacing at the cost of latency, might be worth investigating as an option?

Complaint 3: Vsync slowdowns

When using exclusive fullscreen and Dolphin's actual vsync kicks in, unless you're running the game clearly full speed, Dolphin will drop to 30 FPS whenever there's a hitch. We could fix this by implementing things like triple buffering, but that would increase latency.

Other Potential Issues

PAL50/25 is not really considered here, but are nightmares for non-gsync monitors.


Related issues

Related to Emulator - Emulator Issues #13031: Dolphin - Vsync problem with 120hz screenDuplicate

Actions
Related to Emulator - Emulator Issues #12852: Support Asynchronous PresentationAccepted

Actions
Related to Emulator - Emulator Issues #10227: [FEATURE REQUEST]Ability to select fullscreen refresh rateDuplicate

Actions
Has duplicate Emulator - Emulator Issues #13035: Minor periodical stutters in any game using any backend.Duplicate

Actions
Has duplicate Emulator - Emulator Issues #12642: Vulkan VSync causes slowdown on full screenDuplicate

Actions
Has duplicate Emulator - Emulator Issues #7530: D3D11 Exclusive Fullscreen EnhancementsDuplicate

Actions
Actions #1

Updated by JMC4789 about 1 month ago

Something I didn't want to mention in the main issue here because it's mentioned elsewhere is the need for async presentation. There's another dedicated issue for that which I think is well written.

Actions #2

Updated by JMC4789 about 1 month ago

Actions #3

Updated by JMC4789 about 1 month ago

Actions #4

Updated by JMC4789 about 1 month ago

Actions #5

Updated by JMC4789 about 1 month ago

Actions #6

Updated by JMC4789 about 1 month ago

Actions #7

Updated by JMC4789 about 1 month ago

Actions #8

Updated by JMC4789 about 1 month ago

Actions #9

Updated by JMC4789 about 1 month ago

Actions #10

Updated by JMC4789 about 1 month ago

Fixing all of the issues more or less means implementing async present and triple buffering, along with some other options to maybe increase latency to improve framepacing, like running the game at monitor refresh rate instead of the game's native refreshrate.

Actions #11

Updated by JMC4789 about 1 month ago

TellowKrinkle: PCSX2 sends vsyncs to its GPU emulation right after sleeping to the end of the frame, rather than right before, which is what improves frame pacing at the expense of latency

Actions #12

Updated by JMC4789 30 days ago

  • Status changed from New to Accepted

New issues should only be reserved for when developers haven't replied so I can keep track of when we need to reply to users.

Actions

Also available in: Atom PDF