• Advertisement

Archived

This topic is now archived and is closed to further replies.

Framerates

This topic is 5553 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi, I have a slightly unorthodox question/favor to ask. I have a gf2mx200 and an AthlonXP 1400+ with refresh rates @ 120 up to 800x600 and 100 for any reasonable resolution above that. Yet, running a completely empty opengl window (nothing besides resetting the color and depth buffer, and the world (glLoadIdentity() in it), I get lousy 50 FPS @ 800x600 in windowed and 60 FPS in fullscreen mode. Anything above that decreases the framerate dramatically. I am aware that this card only has 1.3 Gb bandwidth which would become a bottleneck at higher resolutions. Running the program in fullscreen mode @ 640x480 hits the roof (120 fps, equal to the refresh rate). I have a massive opengl window class behind it all and I''m beginning to suspect that there''s something wrong with that, but there''s quite a bit of code I''d have to work throgh, so I''d like to be sure beforehand. I''d like to know what framerates for completely empty scenes are on other machines/in other engines at any resolutions up to 1152x864 (inc.). I''d also appreciate system specs, if at all possible. For those of you starting out (and don''t have an FPS counter, yet), here''s the makeshift code I''m using - it''s not 100% accurate, but it''ll do. It just creates a file called "fps.txt" and outputs the framerate in it each second.
  
#include <fstream>

//globals - copy these into the same file your draw code is in

fstream f("fps.txt", ios::out);
unsigned FPS = 0;
unsigned FPStemp = 0, t = 0, last;

void YourDrawFunction()
{
   t += (GetTickCount() - last);
   last = GetTickCount();

   if(t >= 1000)
     {
     t = 0;
     FPS = FPStemp;
     FPStemp = 0;
     }

   FPStemp++;
}
  
Note: disregard the result for the first second Thanks, Crispy

Share this post


Link to post
Share on other sites
Advertisement
I''m interested in this topic because I need a quality FPS counter for my game, which I''m still baffled by a little bit, so ya, someone help.

Share this post


Link to post
Share on other sites
Methinks the technology is called copy-paste. You might want to look at the white box in my original post... If you can''t understand it, just use it - later on you''ll understand it and write a better one yourself.

Crispy

Share this post


Link to post
Share on other sites
i''d check your pixelformat settings. make sure you''re requesting the whatever screen depth is, and don''t use fancy things such as accumulation buffer that aren''t supported in hardware.

also, try nehe''s tutorials. if they run fast enough (make sure you disable vsync in driver, framerates should hit four-digit numbers) then the problem is most likely with your pixelformat setup.

Share this post


Link to post
Share on other sites
quote:

framerates should hit four-digit numbers



Not on a gf2mx, I wouldn''t have thought.
More like 2-500.

Share this post


Link to post
Share on other sites
okay - i looked at the pfd - it looks okay, so the bug lies somewhere else. anyway - there''s no use in disabling vsync if the framerate doesn''t even come close to the refresh rate, wouldn''t you agree... I''m starting to sustect that it is the video card that physically can''t handle the strain. Got 250 fps on a gf2mx400 @ 800x600 (empty scene) and it improved by around 20 if I increased the gpu core clock speed - so ther you have it... However - some lousy 13 fps when drawing 32000 polys seems a little too outrageous... Weird.

Crispy

Share this post


Link to post
Share on other sites
except for 32,000 polygons is a heck of a lot...

unreal tournament 2003 has anywhere from 30,000 to 80,000 polygons being drawn each second and it runs around 9 frames per second and lower at higher polygon counts on my gf2 ultra...

Share this post


Link to post
Share on other sites

  • Advertisement