Compresión y estiramiento
Parte de la sección Sensación de juego del Journey de Godot de Coddy. Lección 18 de 23.
En los dibujos animados, un personaje se aplasta cuando recibe un golpe y después vuelve a su forma original. Esto hace que el golpe parezca contundente.
Un aplastamiento es una interpolación con dos pasos en scale. El primero hace que el robot sea más ancho y más plano. El segundo vuelve a Vector2(1, 1) con Tween.TRANS_ELASTIC, que supera el tamaño normal y oscila antes de estabilizarse.
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)Esta es una segunda interpolación, junto a la interpolación del destello. Dos interpolaciones pueden ejecutarse en paralelo cuando modifican propiedades diferentes.
Desafío
FácilDespués del destello en hit(), crea un segundo tween llamado wobble:
- anima
scalehastaVector2(1.4, 0.6)en 0.08 segundos, - después, anímalo de vuelta a
Vector2(1, 1)en 0.5 segundos conTween.TRANS_ELASTICyTween.EASE_OUT.
Pruébalo tú mismo
extends Node2D
func hit():
modulate = Color(4, 4, 4)
var tween = create_tween()
tween.tween_property(self, "modulate", Color(1, 1, 1), 0.3)
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Sensación de juego
1Interpolaciones
Tu primera interpolaciónInterpola cualquier propiedadDesvanecerSalida suaveUna tras otraAl mismo tiempoUna moneda que salta4Destellos y retroalimentación
Destello al recibir un golpePausa al recibir un golpeCompresión y estiramientoNúmeros flotantesPractica por tu cuenta: Playground de Godot