QGLWidget を再描画して FPS を決定する 2 つのタイマーがあります。
QObject::connect(&fpsTimer, SIGNAL(timeout()), this, SLOT(updateFps()));
fpsTimer.start(1000);
QObject::connect(&updateTimer, SIGNAL(timeout()), this, SLOT(updatePanel()));
updateTimer.start(0);
void GLPanel::updatePanel()
{
updateBuffers();
updateGL();
frameCount++;
}
また、フレームごとに新しいデータで vbo を更新します。
Qt がインストールされているマシンでは、更新タイマーが GUI スレッドに基づいて起動するため、一貫して 60 FPS が得られます。GUIスレッドに依存するのではなく、15msごとに更新するように設定してみました。他のマシンでは、約 1000 FPS まで上昇します。
私が抱えているもう 1 つの問題は、私のポイントが他のマシンで正しく描画されないことです。それらは間違った場所と色で描かれています。これがQtまたはOpenGLに関連しているかどうかについて...?
これを引き起こす原因についてのアイデアはありますか?
画面中央をクリックした後の他の マシン 他のマシン
ポイントをクリックした後の稼働中の開発マシン 稼働中の開発マシン
どちらもまったく同じに見えるはずです。