FPS・フレームタイム計算
目標FPSを入力するだけで、1フレームあたりの処理時間(ms)がすぐ分かります。パフォーマンス調整のお供に。
▶このツールについて
目標FPSから1フレームあたりの処理時間(ms)を即座に計算できるツールです。60/30/120FPSなど任意の値に対応し、フレームタイムから必要FPSへの逆算も可能。UnityのTime.deltaTime設計やパフォーマンスチューニングに活用できます。
「このUpdate、1フレームに何ms使っていいんだっけ?」──ゲーム開発をしていると、こんな計算はしょっちゅう必要になります。60FPSなら約16.67ms、30FPSなら約33.33ms。頭では分かっていても、毎回電卓を叩くのは面倒ですよね。目標FPSを入力するだけで1フレームあたりのミリ秒がぱっと出るので、パフォーマンスチューニングや物理・アニメーションのタイミング設計にすぐ使えます。Unityの
Time.deltaTimeの感覚を掴みたいときにもどうぞ。Unity上のUI調整ではScreen/World座標変換やColor変換ツールも一緒に活用すると便利です。ツール操作
目標FPS → フレームタイム
または FPS
1フレームあたりの時間 16.67 ms
1秒あたりのフレーム数 60
逆引き: この処理時間で必要なFPS
FPSとフレームタイムの基礎知識
FPSとミリ秒(ms)の関係とは?
FPS(Frames Per Second)とは、1秒間に画面が更新される回数を示します。例えば「60fps」は1秒間に60回画面が切り替わることを意味します。この1フレームを描画するのに許される時間のことを「フレームタイム(ミリ秒)」と呼びます。
【計算式】 1フレームの描画時間(ms) = 1000 ÷ FPS
- • 60fpsの場合:1000 ÷ 60 ≒ 16.67ms
- • 120fpsの場合:1000 ÷ 120 ≒ 8.33ms
ゲーム開発における重要性
ゲームエンジン(UnityやUnreal Engineなど)で滑らかな描画を維持するためには、すべての処理(物理演算、AI、レンダリングなど)を1フレームの制限時間内に収める必要があります。もし60fpsを目標にするなら、毎フレームの処理を必ず16.67ミリ秒以内に完了させなければなりません。
処理落ち(スパイク)の原因
フレームタイムが目標値(例:16.6ms)を超えると、次のフレームの描画が間に合わず「画面がカクつく(スタッター)」現象が発生します。
開発時の最適化指標
プロファイラを使ってフレームタイムを計測し、どの処理が16.6msをオーバーしているかを特定して負荷を削減するのが最適化の基本です。
代表的なFPSとターゲット環境
| ターゲットFPS | 許容ミリ秒(ms) | 主なデバイス・用途 |
|---|---|---|
| 30 fps | 33.33 ms | Nintendo Switch、古いスマートフォンゲーム、映画 |
| 60 fps | 16.67 ms | 現在の標準的なゲーム、PCブラウザ、スマホアプリ |
| 90 fps | 11.11 ms | VR機器 (Meta Quest等。VR酔い防止のため高fpsが必須) |
| 120 fps / 144 fps | 8.33 / 6.94 ms | PS5/Xbox Series X、ゲーミングPC、eスポーツ向けモニター |
使い方
- 目標FPS(60、30、120など)を入力欄に入力します
- 1フレームあたりの時間(ミリ秒)が自動で表示されます
- フレームタイムを入力すると、必要なFPSの逆算も表示されます
いつ使うか
ゲームの目標FPSを決めたとき、1フレーム内に収めるべき処理時間の目安を知りたい場合。パフォーマンスチューニングや物理・アニメーションのタイミング設計に活用できます。
使用例
60FPS → 16.67ms/フレーム、120FPS → 8.33ms/フレーム、30FPS → 33.33ms/フレーム。VR開発では90FPS(約11.1ms)が一般的です。
補足・Tips
- モニタのリフレッシュレート(60Hz/120Hz等)を超えるFPSは画面に反映されません。
- 物理演算は固定タイムステップ(例: 50Hz)で行うことが多く、描画FPSとは別に設計します。
- 1フレーム16.67msなら、重い処理は複数フレームに分割する検討を。
よくある質問
msとは何秒ですか?
ms(ミリ秒)は1秒の1000分の1です。1ms = 0.001秒。60FPSなら1フレームあたり約16.67ms、30FPSなら約33.33msの処理時間が許容されます。
60FPSの1フレームは何msですか?
60FPSの1フレームは約16.67msです。計算式は 1000ms ÷ 60 = 16.67ms。ゲーム開発では、この時間内に描画・物理・入力などを処理する必要があります。
30FPSと60FPSの違いは?
| 項目 | 30FPS | 60FPS |
| 1フレーム | 約33.33ms | 約16.67ms |
| 滑らかさ | 標準 | より滑らか |
| 処理負荷 | 低い | 約2倍 |
モバイルやVRでは30FPSを目標にする場合もあります。
| 1フレーム | 約33.33ms | 約16.67ms |
| 滑らかさ | 標準 | より滑らか |
| 処理負荷 | 低い | 約2倍 |
モバイルやVRでは30FPSを目標にする場合もあります。
フレームレートとは?
フレームレート(FPS)は、1秒間に表示される画像の枚数です。ゲームや動画の滑らかさを表す指標で、60FPSが一般的な目標値です。
ゲーム開発で目標FPSの目安は?
PC/コンソールは60FPS、モバイルは30〜60FPS、VRは90FPS以上が一般的です。モニタのリフレッシュレート(60Hz/120Hz等)を超えるFPSは画面に反映されません。
FPSからフレームタイムを計算するには?
1000ms ÷ FPS。このツールに目標FPSを入力するだけで、1フレームあたりのミリ秒が即座に計算されます。
120FPSの1フレームは何ms?
約8.33ms。1000÷120=8.33。高リフレッシュレートモニタ向けの目標値です。
フレームタイムから必要FPSを逆算できる?
はい。このツールではフレームタイムを入力すると、必要なFPSも表示されます。
UnityのTime.deltaTimeとは?
前フレームからの経過秒数。60FPSなら約0.0167秒。Update内で移動量などを掛けて使います。
FPS計算ツールの使い方は?
目標FPS(60、30、120など)を入力するだけで、1フレームあたりのミリ秒が自動計算されます。