sharoz's picture

More than 60 FPS in GLControl?

I'm having trouble getting more than 60 frames per second when using a GLControl.
I think the cause is the GLControl.SwapBuffers(), so I'm curious if there are any know limitations.

Here's the basic algorithm:
I have a timer that ticks about 60 times per second.
Each tick:

  1. Increment the frame counter
  2. Call my render function
  3. GLControl.SwapBuffers()
  4. Increment the frame counter
  5. Call my render function
  6. GLControl.SwapBuffers()

I should get 120 fps, but I only get 60.
When I comment out both swapbuffer calls, I get 120 fps (but nothing shows up on the screen)
When I comment out one swapbuffer call, I get 120 fps (but I don't think it's actually showing both frames)

Some notes:
I have a CRT monitor running at 100 Hz
The render function just renders a few points
I'm using Vista and a GeForce 8600

Any ideas???


Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
the Fiddler's picture

VSync is enabled by default in OpenTK. Try setting VSync = false; in the Load event of the GLControl and, if that fails, try disabling VSync through the Nvidia control panel.

Are you positive that your monitor is running at 100Hz?

sharoz's picture

That did it!
I now get 100 FPS, which is what I was going for.

Thanks Fiddler!