如何在Qt图形应用程序中计算每秒帧数

时间:2016-03-21 11:17:11

标签: qt 3d opengl-es-2.0

我有一个基于Qt的OpenGLES2.0应用程序,我想要捕获FPS。

我的应用程序绘制相同的几何体16次然后尝试知道FPS。

如何确保glDrawElements()完成工作?

我想获得正确的FPS。

有没有办法让glDrawElements()同步或汇集glDrawElements()完成?

1 个答案:

答案 0 :(得分:4)

  1. 在应用程序窗口/窗口小部件类中定义Timer对象。 QTime frameTime;
  2. 在initializeGL中启动计时器。 frameTime.start();

  3. PaintGL中的
  4. paintGL ()
    {  
       draw_your_geometry();
    
       ++frameCount;
    
      if (frameTime.elapsed() >= 1000)
      {
    
         double fps = frameCount / ((double)frameTime.elapsed()/1000.0);
    
      }
    
    }