Menu
CoddyTech

デルタ

CoddyのGodotジャーニー「ノードとシーン」セクションの一部。レッスン 8/28。

すべてのコンピューターが1秒間に60フレームを描画するわけではありません。高性能な画面は144フレームを描画し、処理が重いスマートフォンでは30フレームになることもあります。1フレームごとに2ピクセル移動するロボットは、一方では速く、もう一方では遅くなります。

Godotは、フレームごとにdeltaを_process(delta)に渡します。これは前のフレームから経過した秒数です。1秒間に60フレームの場合は約0.0167、30フレームの場合は約0.033です。

移動量にdeltaを掛けると、1秒あたりの移動量になります。

func _process(delta):
	position.y += 60 * delta

これにより、どのコンピューターでもノードは1秒ごとに60ピクセル移動します。

challenge icon

チャレンジ

簡単

どのコンピューターでもロボットが同じ速度で動くようにしましょう。

  1. _process()内で、ロボットが1秒あたり100ピクセル移動するようにposition.x += 2を変更します。
  2. 100にdeltaを掛けます。

「プレイ」を押します。ロボットが右へ滑らかに進み、1秒ごとに100ピクセル移動します。その後、「確認」を押します。

自分で試してみよう

extends Node2D

func _process(delta):
	position.x += 2

ノードとシーンのすべてのレッスン

自分で練習してみよう: Godotプレイグラウンド