PDA

View Full Version : opengl speed



mahnovetsky
07-20-2001, 03:06 AM
I have made a simple 2d box to move from the left side of the screen to the right in fullscreen mode. I wanted the box to be displayed with every refresh. The box was displayed 44 times a second in a 85Hz refresh rate with a pentium II 233Mhz and a tnt2m64 pci card. With a pentium II 400Mhz it worked fine.
Is there a way i can make this program work with a 233Mhz processor or does opengl require more speed.

P.S. I used NeHe tutorial 1 as a foundation for my code.

DFrey
07-20-2001, 04:08 AM
When you say it worked fine with a Pentium II 400, was that with the same video card? Or rather, the same system except for CPU? Or a completely different system that had a Pentium II 400?

mahnovetsky
07-20-2001, 04:13 AM
same video card was used,both had win 98 and the latest drivers, but the rest of the system was different. Pentium II 400 was a dell system and the pentium II was a HP.
Originally posted by DFrey:
When you say it worked fine with a Pentium II 400, was that with the same video card? Or rather, the same system except for CPU? Or a completely different system that had a Pentium II 400?

DFrey
07-20-2001, 04:15 AM
Ok, how fast was it on the 400?

mahnovetsky
07-20-2001, 04:18 AM
the screen was draw in sync with the refresh, so at 85hz refresh the screen was updated 85 times/s

Originally posted by DFrey:
Ok, how fast was it on the 400?

DFrey
07-20-2001, 04:28 AM
One thing I would check, is on the 233 MHz system, check to see if your selected pixel format allows hardware acceleration. Read the GL_VENDOR and GL_RENDERER strings to ensure that a hardware accelerated context is actually being used. If it is, decrease the size of the window. If it speeds up, then you are not CPU limited, but are fillrate limited (hard to believe though).
If it doesn't speed up significantly, then you are CPU limited and there is not much you can do to make it go faster.

[This message has been edited by DFrey (edited 07-20-2001).]

UnImPortant
07-22-2001, 04:05 AM
You said your code waas based on nehe's tutorial #1. This code still draws every vertex by calling glVertex3f for every vertex that is to be drawn.
You could might be able to speed your code a little by using arrays to specify your vertices (and then use DrawElements/ArrayElement etc.), since that results in less function calls, which increases the performance of you program, and your vertices might even be 'cached' so that the same vertices can be drawn faster. Since you have to draw every vertex three times, this should speeed up your code a little too, if it's supported on your platform.

[This message has been edited by UnImPortant (edited 07-22-2001).]