FPSの制御を行う前準備がもうちょっと必要です。つまらない準備にお付き合いください。龍神録2プログラミングの館では「フレームによる計算」をして弾の計算などを行います。ほとんどのモニタは60Hz以上なので、1秒間に60回画面を更新することを前提にした造りにします。速さが1フレームに10ピクセル進む弾があったとしたら、60Hzのモニタであれば1秒間で600ピクセル進みます。FPS制御をしなければ120Hzのモニタでは1200ピクセル進んでしまいます。このようなことが無いように、60FPS以上のレートで画面を更新しないようにします。クラスとしては重要な役目を果たすのですが、正直中身について特に良く知らなくてもいいので、この章では本クラスの中身を詳しく紹介する気がありません。このFpsクラスは私自身10年位前から使いまわしていて、特に変える必要もないのでずっとこのままです。別に中身を理解しなくてもいいというつもりで見て下さい。2);//小数点第2位で四捨五入する}120フレーム分の時刻をリストに保持し、そこから平均を算出します。ポイントは、待機する時間を1つ前のフレームから計算しないこと。GetNowCountやSleepの精度はミリ秒なので、16.66666...[ms]待機しなければならない処理には精度が合わないため長い目で見て待機処理を実施しています。詳しいことは旧龍神録の館に譲ります。FpsクラスのインスタンスはLooperクラスが持ちます。}}Looper::loop()内の_fps.wait()でうまいこと60FPSになるように待機してくれるようになります。