Godot Engine – Juego de plataformas con AnimatedSprite, polígonos de colisión y más

Una vez se empieza a entender como funciona Godot es una maravilla. Esta vez vamos a ver algo así como lo que se ve en este vídeo:

 

 

Se puede bajar el proyecto de godot aquí: kinet-jummp.zip

 

He sacado el mono de aquí: https://opengameart.org/content/baboon-monk

Y he exportado cada frame recortando con inkscape para luego usar un nodo AnimateSprite.

 

 

He sacado el fondo de aquí: https://opengameart.org/content/magic-cliffs-environment

 

Lo importante a destacar y comentar:

 

Los movimientos son bruscos. No trata de eso el post y está programado para simplemente ir viendo como el personaje puede saltar y andar sobre superficies rígidas.

Si se utiliza AnimationSprite mediante el editor se pueden generar diferentes animaciones.

En mi caso he generado 3 animaciones. Cuando andas, cuando está parado el personaje y cuando salta.

 

 

 

Luego con código se puede ir pasando de una animación a otra. Siendo mediante código que invertimos horizontalmente todos los sprites si queremos andar a la izquierda (con flip_h).

 

Se ve en el vídeo que pasa por el otro lado de una planta. Usando GIMP se puede sacar como otro sprite y darle otro nivel de profundidad. No es lo mejor del mundo pero para estas pruebas sirve.

Lo ideal es un tilemap. Pero eso en otros posts.

 

 

Es interesante mencionar que para que el jugador caiga se ha de aplicar gravedad. Y que para que caiga sobre una zona se han de colocar cuerpos rígidos con un area2d definida de colisión.

 

 

Algo que se puede hacer es que el fondo de nubes sea otro fondo y se mueva un poco conforme vamos a la derecha o a la izquierda. Para dar una sensación de profundidad.

No he realizado eso pese a que el recurso que he bajado de fondo permite eso y generar un tilemap.

 

En fin. Espero que a alguien le sea de utilidad ese ejemplo pese a que las mecánicas y muchos aspectos están sin trabajar.

 

Ir a la barra de herramientas