Menu
CoddyTech

スカッシュ&ストレッチ

CoddyのGodotジャーニー「ゲームの手触り」セクションの一部。レッスン 18/23。

アニメーションでは、キャラクターが攻撃を受けると押しつぶされ、その後、元の形に戻ります。こうすると、攻撃に重みがあるように見えます。

スクワッシュは、scaleに対する2段階のトゥイーンです。最初の段階ではロボットを横に広げ、平たくします。2段階目では、Vector2(1, 1)に戻ります。Tween.TRANS_ELASTICを使うと、通常のサイズを通り越してから揺れ、落ち着きます。

var wobble = create_tween()
wobble.tween_property(self, "scale", Vector2(1.4, 0.6), 0.08)
wobble.tween_property(self, "scale", Vector2(1, 1), 0.5).set_trans(Tween.TRANS_ELASTIC).set_ease(Tween.EASE_OUT)

これは、フラッシュのトゥイーンに加えて実行する2つ目のトゥイーンです。異なるプロパティを変更する場合、2つのトゥイーンを同時に実行できます。

challenge icon

チャレンジ

簡単

ロボットが攻撃を受けたとき、押しつぶされるようにしましょう。

  1. hit()のフラッシュの後に、wobbleという名前の2つ目のトゥイーンを作成します。
  2. scaleをVector2(1.4, 0.6)へ、0.08秒かけてトゥイーンします。
  3. 次に、Tween.TRANS_ELASTICとTween.EASE_OUTを使って、Vector2(1, 1)へ0.5秒かけて戻します。

「プレイ」を押してからEを押します。ロボットが平たくなって、元に戻ります。その後、「確認」を押します。

自分で試してみよう

extends Node2D

func hit():
	modulate = Color(4, 4, 4)
	var tween = create_tween()
	tween.tween_property(self, "modulate", Color(1, 1, 1), 0.3)

ゲームの手触りのすべてのレッスン

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