I am luck enough to have a GeForce 256 and a Radeon 64MB DDR. And before anybody asks I’m not using them at the same time…
my problem is I have an application that uses the extension wgl_ext_swap_control, and I do all the correct checking when getting the function pointers etc…
The application works fine on the GeForce, limiting the frame rate just as i want it. But when I come to run it on the Radeon the application runs fine and seems to set up the function pointers fine, but when I call these functions nothing happens.
In the “OpenGL” tab in the “Advanced Display Settings”…do you have “Wait for vertical sync” turned off? If you do, the value passed into wglSwapIntervalEXT() is ignored on Radeon.
Additionally, Radeon only supports values of 0 or 1: 0 means don’t sync to the vertical retrace, 1 means sync.
Also, I’m not sure that the swap interval has any effect on non full-screen apps.
The Radeon also automatically does tripplebuffering when Vsync is on. This will make you get reported framerate above the vertical refresh rate since some frames may get dropped because a newer frame was ready before the next refresh.
the v-sync is definately on in the driver settings. (now!!)…
but it still doesn’t work…
my application is not running in full screen mode, and the frame rates that i am getting reported are ~300fps on my 60Htz refresh rate monitor, so i don’t think that it can be the triple buffering, I also get no change in fps when i switch between 0 and 1.
any further suggestions welcome… has anybody else suffered this problem…
I know my application works because it works fine on my GeForce 256…
I suspect this is a driver problem then that the value sent to wglSwapIntervalEXT is ignored for windowed applications. I will look into this…thanks for your patience.
Originally posted by Won:
[b]I think that vsync or swapinterval doesn’t work on windowed applications…AFAIK this is a limitation of Windows that prevents you from doing this.
Originally posted by leekerley:
[b]the v-sync is definately on in the driver settings. (now!!)…
but it still doesn’t work…
my application is not running in full screen mode, and the frame rates that i am getting reported are ~300fps on my 60Htz refresh rate monitor, so i don’t think that it can be the triple buffering, I also get no change in fps when i switch between 0 and 1.
any further suggestions welcome… has anybody else suffered this problem…
I know my application works because it works fine on my GeForce 256…
thanks in advance… a very troubled programmer[/b]
There’s nothing preventing the fps to go beyond 300fps with Vsync enabled if you have vsync enabled. With tripplebuffering you shouldn’t see a fps change when enabling Vsync.
There are however some problems with Vsync on Radeon, it worked in the release drivers but in later releases it seams to not always work. Personally I don’t care since I always turn it off anyway.
[This message has been edited by Humus (edited 03-02-2001).]