PDA

View Full Version : Windows 7 + image tearing with SwapInterval(1)



Nicolas Lelong
11-26-2009, 04:31 PM
Hi everyone,

I recently tested some of my work on two Windows7 machines, and noticed that a tearing occurs even if I enable VSync using the wglSwapInterval(1) that works fine on my XP development platform.

Both machines have NVidia boards (G92 like) and recent drivers.

Anyone noticed something similar ? I did not yet have the time to investigate.

Cheers,
Nicolas.

ZbuffeR
11-27-2009, 12:22 AM
Maybe a nvidia control panel default of 3D settings with sets vertical sync to "always off" ?

mfort
11-27-2009, 12:49 AM
I have the same problem. But only when Aero is turned OFF.
If I enabled aero the tearing is gone.

Nicolas Lelong
11-27-2009, 06:54 AM
I have the same problem. But only when Aero is turned OFF.
If I enabled aero the tearing is gone.

Yes! That does the trick! Hope it will not impact performance too much, still some tests ahead...
Many thanks !

mfort
11-27-2009, 08:39 AM
Well, in my case the performance drops. BTW Same problem is in Vista.

Would be nice if NVIDIA confirms this problem. It could be either "BY DESIGN" in Windows and we cannot do much or driver bug that could be fixed.

Anyone from NV?
Anyone with ATI card to check it there?

ZbuffeR
11-27-2009, 08:51 AM
"performance drops" -> this is somewhat expected with vsync, as for a 60hz display, you can get only 60, 30, 20, 15, ...
Instead of 200+ fps you will get 60.
Instead of 58 fps you will get 30.

Can you provide details for your actual perf values ?

mfort
11-27-2009, 09:01 AM
"performance drops" -> this is somewhat expected with vsync, as for a 60hz display, you can get only 60, 30, 20, 15, ...

Of course, I am not a newbie. I do synchronize on video input stream. I do only 25fps, as this is totally enough for my preview purposes.

I have no data about performance drops. But you can see it immediately. For example when you are hovering over some UI buttons you can see how the OpenGL slows down. I am sure this is due to the fact that the Windows buttons (in Vista/Win7) are rendered by GPU and therefore less time for my app.
Under WinXP all the GUI is rendered by GDI mostly in CPU, so all the GPU power was just for me.