Menu
CoddyTech

Compression et étirement

Fait partie de la section Sensations de jeu du Journey Godot de Coddy. Leçon 18 sur 23.

Dans les dessins animés, un personnage s’écrase lorsqu’il est touché, puis reprend sa forme. Le coup paraît ainsi plus lourd.

Un écrasement est une interpolation en deux étapes sur scale. La première rend le robot plus large et plus aplati. La seconde le fait reprendre sa forme jusqu’à Vector2(1, 1) avec Tween.TRANS_ELASTIC, qui dépasse la taille normale et oscille avant de se stabiliser.

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)

C’est une deuxième interpolation, à côté de celle du flash. Deux interpolations peuvent s’exécuter en parallèle lorsqu’elles modifient des propriétés différentes.

challenge icon

Défi

Facile

Après le flash dans hit(), créez un deuxième tween appelé wobble :

  1. animez scale jusqu’à Vector2(1.4, 0.6) en 0.08 seconde,
  2. puis animez-le à nouveau jusqu’à Vector2(1, 1) en 0.5 seconde avec Tween.TRANS_ELASTIC et Tween.EASE_OUT.

Essayez vous-même

extends Node2D

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

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Sensations de jeu

Entraînez-vous par vous-même : Playground Godot