-

This is the main shmups forum. Chat about shmups in here - keep it on-topic please!

Which would you choose?

V-sync ON (input lag, no tearing)
12
27%
V-sync OFF (screen tearing, less input lag)
32
73%
 
Total votes: 44

User avatar
eebrozgi
Posts: 178
Joined: Fri Nov 27, 2009 11:17 pm
Location: Finland
Contact:

Re: Input lag or screen tearing? (v-sync on/off)

Post by eebrozgi »

bulbousbeard wrote:Uh, G-Sync and FreeSync exist in November 2015. This isn't even a question anymore.

You've got a variable refresh monitor, or you're doing it wrong. I feel sorry for anyone who's still eating tearing in November 2015.
You speak like it's common to upgrade your monitor every year.

I first heard about G-Sync and FreeSync like a month ago. How long have they been available in monitors with a reasonable price?
If watching the trailer of the game
makes you feel a certain way
I would be very happy if
you would give the game a try

~Daisuke Amaya, 2015

ZeroRanger - RELEASED!
bulbousbeard
Posts: 110
Joined: Sun Nov 03, 2013 5:17 pm

Re: Input lag or screen tearing? (v-sync on/off)

Post by bulbousbeard »

eebrozgi wrote:
bulbousbeard wrote:Uh, G-Sync and FreeSync exist in November 2015. This isn't even a question anymore.

You've got a variable refresh monitor, or you're doing it wrong. I feel sorry for anyone who's still eating tearing in November 2015.
You speak like it's common to upgrade your monitor every year.

I first heard about G-Sync and FreeSync like a month ago. How long have they been available in monitors with a reasonable price?
They've been available since at least August.
User avatar
Ed Oscuro
Posts: 18654
Joined: Thu Dec 08, 2005 4:13 pm
Location: uoıʇɐɹnƃıɟuoɔ ɯǝʇsʎs

Re: Input lag or screen tearing? (v-sync on/off)

Post by Ed Oscuro »

ED-057 wrote:I guess some games use triple buffering when vsync is on. This adds lag compared to double buffering
No:
Anandtech wrote:In other words, with triple buffering we get the same high actual performance and similar decreased input lag of a vsync disabled setup while achieving the visual quality and smoothness of leaving vsync enabled. [...] The software is still drawing the entire time behind the scenes on the two back buffers when triple buffering. This means that when the front buffer swap happens, unlike with double buffering and vsync, we don't have artificial delay.
http://www.anandtech.com/show/2794/2
or http://gamedev.stackexchange.com/questi ... dern-games <- this is an especially good answer
ED-057 wrote:I see no reason why double buffering with vsync on should have more lag than with vsync off
This was answered already in the Wikipedia link (and echoed in the other two links I give here); double buffering forces both buffers to be locked before the read-out is finished. With triple buffering, the software can create a fresher frame and have it ready to go before the readout is finished. Put another way (Anandtech, again):
Our options with double buffering are a choice between possible visual problems like tearing without vsync and an artificial delay that can negatively effect both performance and can increase input lag with vsync enabled. But not to worry, there is an option that combines the best of both worlds with no sacrifice in quality or actual performance. That option is triple buffering.
They key insight behind triple buffering is just that you can use (waste) some "extra" GPU time to create more frames that may or may not be used, but they are ready to go if needed, and they allow fresher results to be swapped in if necessary. Double buffering is too inflexible to do this.

"Framerate consistency" is a different topic; triple buffering isn't going to cause an inconsistent framerate in of itself - nor is double buffering going to fix it.
User avatar
ED-057
Posts: 1560
Joined: Fri Jan 28, 2005 7:21 am
Location: USH

Re: Input lag or screen tearing? (v-sync on/off)

Post by ED-057 »

Ed, this thread is about input lag. You are quoting things that are not talking about input lag.
User avatar
Ed Oscuro
Posts: 18654
Joined: Thu Dec 08, 2005 4:13 pm
Location: uoıʇɐɹnƃıɟuoɔ ɯǝʇsʎs

Re: Input lag or screen tearing? (v-sync on/off)

Post by Ed Oscuro »

That is the most bizarre reply I've seen in a while.

I'm confused how you think that a topic you were already discussing is suddenly out of bounds. Everybody knows that double/triple buffering is related to input lag - at least they do once they understand that triple buffering allows inputs to be reflected in output faster than double buffering would. You apparently didn't agree, but you nevertheless mentioned it in the topic, so don't now try to sweep it under the rug. All I've done is share some information on how this is supposed to work.

"Framerate consistency," on the other hand, certainly is a problem, but it's one that's mostly out of the hands of the end user, unlike double/triple buffering and v-sync options. Hardware demands, content, and frame pacing (i.e., SLI and XFire) options can all change, but your only real options as a user are to upgrade your hardware or update the program (i.e., Bloodborne). And, of course, it's less of a problem when you select the right form of buffering to begin with (double buffering would be fine if all frames were delivered right on time). So...when I look at the original question in the thread title, I see that this is farther from that than getting a good discussion of the workings of double/triple buffering rolling.
User avatar
ED-057
Posts: 1560
Joined: Fri Jan 28, 2005 7:21 am
Location: USH

Re: Input lag or screen tearing? (v-sync on/off)

Post by ED-057 »

Sigh.

Go play a shmup in MAME and measure how much input lag you have with and without triple buffering enabled and report back.
User avatar
Ed Oscuro
Posts: 18654
Joined: Thu Dec 08, 2005 4:13 pm
Location: uoıʇɐɹnƃıɟuoɔ ɯǝʇsʎs

Re: Input lag or screen tearing? (v-sync on/off)

Post by Ed Oscuro »

"Sigh" yourself. I've already been trying this out! I'll check it out - but that would just be an anecdote, not a systematic explanation, when I'm trying to find information that isn't dependent on some random developer implementing everything correctly. Cagar was also asking for games beyond MAME; I could also mention that the latest thing I tried out was Hard Reset, which seems to expose options for double/triple buffering and v-sync, and where I don't spot any obvious lag with any combination of settings.

It's widely believed (wrongly, as it turns out) that DirectX doesn't actually implement triple buffering, but a render ahead queue. It actually can do both, but there might be confusion with bad labeling here. Calling a game with a high render ahead queue setting "triple buffering" is not correct.

For DirectX, multiple articles at MSDN specifically state that triple buffering is faster, here's the most relevant one:
https://msdn.microsoft.com/en-us/librar ... 85%29.aspx

And for a great discussion with pulls in a variety of other useful discussions of double vs triple buffering, there's this:
https://www.reddit.com/r/oculus/comment ... od/ciwya80

At risk of making things even more complicated, I'd note that MAME is likely an especially bad test because it is supposed to deliver the same frame that the arcade hardware would. Native PC applications don't have this limitation.

Edit: Put another way, I expected MAME to not show any advantages for triple buffering v. double buffering. I'm not sure how MAME handles slowdown and framerate when no frame skipping is allowed and the framerate fails to match the v-synced refresh rate - but in a regular PC game, this is an area where triple buffering can avoid some cases where double buffering would have its refresh rate halved due to the delayed frame.

With that in mind, I tried to compare Shinobi and the US set of Raiden Fighters Jet, using EmuCR-MAMEPlus-r5215-x64 (launched with the MAME Plus UI). I can't be sure of any difference between any of the following - v-sync off, v-sync with double buffering, or v-sync with triple buffering. I don't expect triple buffering to be much faster here, given it's MAME.

Edit Edit: In-game sand scorpion seems like a better test - 60Hz game on a not-quite 60Hz PC monitor. No v-sync is smooth, but v-sync with either double or triple buffering seems noticeably laggy.
Post Reply