Unityな日々(Unity Geek)

Unityで可視化アプリを開発するための試行錯誤の覚書

フレームとUpdate(), FixedUpdate()

Unityは「フレーム」と言う概念で描画を繰り返す。映像と同じ考えだ。
ひとつのフレームの動作はfunction Update(){} の中に記述するが、Update()は実行間隔は一定ではない。
そこで、前のループからの時間経過を表すTime.deltaTimeを使う。定めた速度にTime.deltaTimeを掛け合わせれば、正しい速度で変化する。

function Update() {
transform.Rotate(0, 5 * Time.deltaTime, 0);
}


また、Unityには、FixedUpdate(){} と言う関数も用意されている。これはフレームとは別に、一定時間間隔で実行される。デフォルトは0.01秒間隔。物理演算用に作られたものらしい。


以上、書籍『Unity入門』 - Unity におけるフレームと Updateがまとまっている。
またWhat's the difference between Update and FixedUpdate? When are they called? - Unity Answersはさらに詳しい。