Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Memfis

Do I need vsync on or off when playing Doom?

Recommended Posts

I'm not really sure if I even see any difference in game, but if there is a recommended option it would be nice to know. I play with CAPPED framerate.

Share this post


Link to post

You mean capped at 35fps? Well if you don't see screen tearing when turning then you don't need Vsync.

Share this post


Link to post

Old CRT monitors painted the picture on the screen with an electron beam, controlled magnetically with coils mounted around the picture tube. This beam moves left to right, then top to bottom. Once it reaches the bottom-right, it must travel back to the upper-left, to start a new frame. This time is called the vertical retrace period.

 

In a standard computer/video card setup, each pixel's color is stored in video RAM. If you change the RAM while the picture is being drawn by the video hardware, you might see a portion of frame #1 at the top, and frame #2 at the bottom. The effect is even more pronounced on the new solid-state monitors (LED/LCD/Plasma, etc). This causes a visual artifact known as "tear". It is especially pronounced in Doom when turning. You might see an artificial, nearly horizontal line marking the split between adjacent frames.

 

However, if a program limits changes to video RAM, to only occur during the vertical retrace period, everything is ok, because the monitor is not drawing during vertical retrace. Some video cards can detect when vertical retrace is occurring, and programs can take advantage of that.

 

To test for the tear effect, start up Doom. Turn off VSync. Kill all monsters. Then, move to a bright, narrowish room with lots of color (maybe on the blue carpet in the start room of E1M1).

 

Spin in place, and pay attention to the screen as a whole. Maybe move back from the monitor a couple of feet. If tearing is occurring, you will see a distinct, artificial upper and lower half, where the top half will slightly lag behind the bottom half.

 

Now, turn on VSync, and repeat. This upper/lower half effect should go away.

 

If it doesn't work for you, here's some possible reasons:

  • Your video card may not detect vertical retrace properly, or your drivers may not relay the info.
  • The source port you're using cannot finish painting the screen in the vertical retrace time.
  • The source port handles vsync in the wrong place in the sequence.
  • The compatibility layer driver (SDL/DirectX/etc) does not handle VSync at the right place in the sequence, or at all.
  • Your monitor has extra frame rate "faking" technology which emulates higher frame rate with blending/interpolation algorithms.
  • The visual content between frames is similar, especially in video games like Doom, so that complicates seeing this effect.
  • Your eyes cannot see past a certain rate of change of visual stimuli. Some people cannot distinguish more than 30 fps. My tests have me seeing upwards of 200. I have no doubt that some fighter pilots, and video game contest winners can go far beyond that. But, monitors and video cards are typically capped at 50, 60, 70, 120, or 240, with the majority at 60/70.

Video tear can be annoying, so it usually makes sense to use VSync if available. But, there is a drawback: If the system truly does wait for vertical retrace, your computer is idle, waiting for this vertical retrace to occur. If your port paints the screen and waits for vertical retrace in a thread, you might be ok. Or if you're capped at 35 fps, and your screen refresh is a multiple of that (70 Hz), you're probably ok. But, if the refresh is not a multiple (say 60 Hz), you might miss a frame on regular intervals! When vertical retrace happens right before you're ready to paint the screen, you now have to wait almost a whole screen refresh before painting the screen. This makes the game feel slower than it is. If the port is written to handle this scenario, the issue can be mitigated. But the programmer would have had to deliberately write code to handle this.

 

At the end of the day, it's up to personal taste, so give it a shot, knowing what to look for. If you do do a test, please post your findings, and the port(s) and PC settings you used.

 

 

Edited by kb1

Share this post


Link to post
3 minutes ago, kb1 said:

The visual content between frames is similar, especially in video games like Doom, so that complicates seeing this effect.

Lots of pronounced vertical lines may "help". Like strafing in front of a bunch of contrasting pillars.

Share this post


Link to post
3 hours ago, Da Werecat said:

Lots of pronounced vertical lines may "help". Like strafing in front of a bunch of contrasting pillars.

Yep. Strafing may make it even more obvious, especially in a direction parallel with a distant wall - or pillars, cause tear would make those features look jagged at the frame mismatch. Good point.

Share this post


Link to post

This can actually be answered quite simply:

 

Take GZDoom, use some map with high contrast content (e.g. some dark architecture against a bright sky), set vid_vsync to 0 and then just press the 'turn left' or 'turn right' key. If you are bothered by all the screen tearing, you will have to switch vsync on.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×