Statefull, has hecho muy bien empezando desde 0. Te comento sobre la animación. Tienes que empezar a familiarizarte con los conceptos timing y spacing. Son muy importantes.
El timing es el ritmo o tempo de la animación-> en este caso el timing sería, cuánto tiempo tarda la pelota caer al suelo, en rebotar etc.
Y el spacing, aunque es algo más complicado, básicamente se resumen en como organizas el espacio que recorre tu objeto, en este caso tu pelota.
Tu has puesto un movimiento mecánico de una pelota subiendo y bajando y mucho Squash y stretch. De momento olvídate de esto, y quédate con lo principal que es el timing.
Imagina que coges una pelota en una mano, la sueltas y la dejas caer al suelo. No caerá de forma mecánica. Primero acelera, recorre una trayectoria hacia el suelo, rebota contra el suelo, y frena por efecto de la gravedad antes de volver a caer.
Con lo cual tenemos, que la pelota cuando está en lo alto permanece más tiempo que cuando esta cayendo. Esto es el timing.
Y el spacing sería, que necesitamos muchas más frames cuando la pelota esta acelerando o frenando, que cuando esta cayendo. Te adjunto un esquema para que lo entiendas mejor.
Prueba a hacer esto, y verás cómo tu pelota gana más peso y gravedad.
* observa en el esquema como el espacio entre cada pelota va aumentando cuanto más velocidad coge en la caída.
-- IMÁGENES ADJUNTAS --
🖼️
Estamos trabajando para mostrar las imágenes del foro
Adjunto #29818