Codigo fuente disponible


Ahora el código fuente se encuentra disponible para quien desee consultar, aprender o incluso expandir este proyecto con nuevas funcionalidades.

El proyecto se realizó el C++ y SMFL con el motor de físicas Box2D. El objetivo era implementar las siguientes funcionalidades:

  1. Al menos 3 tipos de obstáculos diferentes usando Joints en uno de ellos. Por ejemplo podrían ser un obstáculo estático, uno dinámico que reaccione a las colisiones del ragdoll y uno con Joints como podría ser un péndulo, una hélice, etc.
  2. Condición de victoria: el juego debe dar por ganado el nivel cuando un ragdoll toca el objetivo de la escena. Este objetivo puede ser estático o dinámico.
  3. Menú o mensaje alusivo a la victoria del nivel y del juego.
  4. Al menos 2 niveles.
  5. Menú del juego.

Me encontré con grandes dificultades para poder completar el proyecto.  Si bien no documenté el tiempo que llevó codearlo, puedo decir sin lugar a dudas que fueron varias semanas y muchas horas de investigar, con prueba y error.

La escasa documentación y tutoriales disponibles sobre como funciona el motor de físicas Box2D, y lo poco amigable que es para el usuario utilizar C++ al ser un lenguaje de programación fuertemente tipado impidieron que pudiera completar el proyecto en menos tiempo.

Del lado positivo, aprendí a trabajar con objetos y clases, colisiones, física de cuerpos estáticos y dinámicos, y principalmente aprendí sobre los pilares de la programación orientada a objetos: herencia, polimorfismo, encapsulamiento y abstracción.

Este conocimiento adquirido me permitó suavizar la curva de aprendizaje de motores de videojuegos como Unity que utilizan C# como lenguaje de programación y me facilitó el aprendizaje de GDScript, lenguaje similar a Python que utiliza Godot (mi engine favorito al momento de escribir estas líneas)

Files

SourceCode.zip 3 MB
Sep 13, 2023

Get Ragdoll Cannon

Buy Now$5.00 USD or more

Leave a comment

Log in with itch.io to leave a comment.