engine: also print fps data to stdout
authorKeith Whitwell <keithw@vmware.com>
Fri, 6 Mar 2009 11:05:09 +0000 (11:05 +0000)
committerKeith Whitwell <keithw@vmware.com>
Fri, 6 Mar 2009 21:00:18 +0000 (21:00 +0000)
Useful for figuring out how much of a perf impact the glBitmap fps
display has on a given driver.

progs/demos/engine.c

index af437e2..3cf311e 100644 (file)
@@ -964,6 +964,28 @@ Draw(void)
         glEnable(GL_TEXTURE_2D);
    }
 
+   /* also print out a periodic fps to stdout.  useful for trying to
+    * figure out the performance impact of rendering the string above
+    * with glBitmap.
+    */
+   {
+      static GLint T0 = 0;
+      static GLint Frames = 0;
+      GLint t = glutGet(GLUT_ELAPSED_TIME);
+      
+      Frames++;
+         
+      if (t - T0 >= 5000) {
+         GLfloat seconds = (t - T0) / 1000.0;
+         GLfloat fps = Frames / seconds;
+         printf("%d frames in %6.3f seconds = %6.3f FPS\n", Frames, seconds, fps);
+         fflush(stdout);
+         T0 = t;
+         Frames = 0;
+      }
+   }
+
+
    glutSwapBuffers();
 }