I don't know if dolphin does, but this is how the different syncs work
Spoiler: (Show Spoiler)
On normal monitors the picture is updated every 1/60th of a second. Black square= new frame white = old
Assume this is like 40 fps or something
vsync off
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
1/60 later (16.6 ms)
▮▮▮▮▮▮▮▮▯▯
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
1/60 later
▯▯▯▯▯▯▯▯▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▯▯▯▯▯▯▯▯
effective framrate: 40 with tearing
vsync on
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
1/60 later
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
1/60 later
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
1/60 later
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
effective framerate:30
Freesync/Gsync
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
when new frame is rendered (25 ms if 40 fps)
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
when new frame is rendered
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
effective framerate:40 (no tearing)
Assume this is like 40 fps or something
vsync off
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
1/60 later (16.6 ms)
▮▮▮▮▮▮▮▮▯▯
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
1/60 later
▯▯▯▯▯▯▯▯▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▯▯▯▯▯▯▯▯
effective framrate: 40 with tearing
vsync on
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
1/60 later
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
1/60 later
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
1/60 later
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
effective framerate:30
Freesync/Gsync
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
▯▯▯▯▯▯▯▯▯▯
when new frame is rendered (25 ms if 40 fps)
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
when new frame is rendered
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
▮▮▮▮▮▮▮▮▮▮
effective framerate:40 (no tearing)
