提供: Japanese Scratch-Wiki
このきじは ひらがなでよめません。ごめんなさい。編集者向け:作成する
FPS (英:Frames Per Second、フレーム毎秒、fpsとも) とは、1秒あたりに画面を更新している回数の単位である。Scratchでは30FPS。
プロジェクトで同時に実行されているプログラムが多いと1フレームあたりの処理が多いため、FPSが下がり、快適に実行することができなくなるので、注意しないといけない。
FPSは基本的には上げられないが、TurboWarpでは最大250FPSまで上げられる。
測定方法
大抵のプログラムに使用されている、変数を1ずつ増やし1秒ごとにリセットする方法では、ターボモード時に機能しない。そこで、ターボモードでも機能するプログラムを紹介する。
@greenflag が押されたとき ずっと [FPS v]を((タイマー)/(1))にする タイマーをリセット
原理
原理としては、一回の処理の後に、何ms(ミリ秒)後に処理が始まったかを測定している。ちょうど画面が更新するタイミングにFPSが処理できるので、ターボモードで機能する。また、1ms単位で測定ができる。
ただし、プロジェクトを停止するタイミングで 0/1 = Infinity として処理されてしまうため、Infinityが返された時は変数に代入しないなどの処置をすると良い。また、この方法を使うとタイマーが使用できないが、この方法でタイマーを生成すると問題ない。