2

私が理解しているように、オブジェクトpaintEvent()の「メインループ」で実行されQApplication、内部システムタスクに時間を費やし、キューに入れられたスロットやその他のイベントの実行を遅らせる可能性があります。

しかし、非常にスムーズなアニメーションを再生する必要があり、そのアニメーションで周期的なメイン ループの遅延に気付いた場合はどうすればよいでしょうか? 別の特別な非常に安定した「メイン ループ」を作成し、paintEvent()呼び出しを再割り当てできますか?

PS はい、GPU、OpenGL、およびその他の優れたテクノロジは、滑らかなゲームのようなアニメーションのために発明されました。

私のプログラム: http://www.youtube.com/watch?v=KRk_LNd7EBg

解決

私が探している paintEvent() 呼び出し周波数安定化、GPU、OpenGL、またはハードウェア vsync は役に立ちません! この問題は、ピクセルの位置を整数で計算するまでは正常な動作です。ピクセルの移動速度のインパルスは常に発生します。私の「問題」を解決するには、座標を実数 (double、float) で測定し、アンチエイリアシング アルゴリズムを実装する必要があります。

4

1 に答える 1