Menu
CoddyTech

ブレイクアウトのボール

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

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

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

チャレンジ

中級

ボールを飛ばして、壁に跳ね返らせましょう。

  1. ball.gdに、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

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

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