im pretty sure the fps counter works fine but even if it doesnt you can easily tell when something is running at 3 fps. you dont need an fps counter to tell you that
Is your terrain engine fill rate or transformation limited?
Try your engine with reduced geometry and then increase in “reasonably” small increments until you get 50,000 polygons. That should help you determine your problem faster.
Try to increase the fill rate to see if the 8500 can out perform the other card.
Another common (for me at least) problem is that when you transfer your engine to your friends computer, your program probably does not prepare the rendering state properly. That is, are all data loaded properly, is the pixel mode and resolution set properly, proper depth buffer setting, stencil and other buffers enabled or disabled properly? Your friends computer probably has a different default rendering state and perhaps your program does not explicitly set all required states.
The last and “sure fire” way to solve the problem is to examine the specifications for the 8500 and see if you give it what it “likes”.
Hope at least some of the above helps.
Almost forgot,
I had the same problem with my programs when moving from nVidia to ATi. I am not sure (at the moment) if this is true, however one card may perform culling or otherwise throw out some geometry (depending if it will be visible) while the other will still transform it all. I had a situation where the nVidia card ran twice as fast but would slow down (to ATi speed) when all of the geometry was visible, while the ATi card ran consistantly slow (as if no culling was done at all).
This situation was only noticed when “display lists” were used (this is where checking the specifications for both cards would be handy).
*** Correction for above ***: The problem even occured for “vertex arrays”, I never really spent more time on it, however I did determine that my program was transformation limited so I suspect that culling may be the problem.
[This message has been edited by hkyProgrammer88 (edited 03-25-2003).]
at the moment the engine is fill rate dependant. so far it doesnt calculate the polygons dynamically as you move around, it just generates them when the engine loads and displays them each frame from a call list
the 8500 does run faster with fewer (10,000 or so) polys but still only about 1/3 as fast as the gf2
increasing the polys into the hudred thousands the 8500 actually drops in framerate much faster than the gf2 does
thanks for the tip on rendering states hkyProgrammer88 ill go give that a look