Merge branch 'mesa_7_5_branch'
[mesa.git] / progs / demos / engine.c
index 14fd1e68629b15e2877e6d11adaf3f23c8f8c434..3cf311e7782ce139d56c65fa4fd3fef5018231a0 100644 (file)
@@ -386,7 +386,10 @@ DrawPositionedPiston(const Engine *eng, float crankAngle)
    glPushMatrix();
       glRotatef(-90, 1, 0, 0);
       glTranslatef(0, 0, pos);
-      DrawPiston(eng);
+      if (eng->PistonList)
+         glCallList(eng->PistonList);
+      else
+         DrawPiston(eng);
    glPopMatrix();
 }
 
@@ -961,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();
 }