Menu
CoddyTech

ブロック崩しのボール

CoddyのGodotジャーニー「プロジェクト」セクションの一部。レッスン 3/33。

次はボールです。ball.gdにあります。ボールはvelocityで移動します。速度は1秒あたりのピクセル数で表し、横方向と下方向に移動します。

var velocity = Vector2(110, -280)

func _physics_process(delta):
	position += velocity * delta

yが負の値なら上方向なので、このボールは右上に向かって動き始めます。

跳ね返すには、壁に当たったときに速度の一部を反転させます。側面の壁ではvelocity.xを反転させます。上側の壁ではvelocity.yを反転させます。ボールの中央がx = 8、x = 632、またはスコアバーの下にあるy = 42に達すると、ボールの向きが変わります。

下側には壁がありません。パドルがその側を守ります。

challenge icon

チャレンジ

中級

ball.gdで:

  1. var velocity = Vector2(110, -280)を追加します。
  2. 物理フレームごとに、velocity * deltaでボールを移動させます。
  3. position.xが8未満または632を超えたとき、velocity.xの符号を反転させます。
  4. position.yが42未満のとき、velocity.yの符号を反転させます。

自分で試してみよう

extends Area2D

func _physics_process(delta):
	pass
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

プロジェクトのすべてのレッスン

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