Parte 1. En este tutorial aprenderemos las bases para crear un juego con GOSU, como cargar la pantalla principal y como mover objetos utilizando el teclado.

Antes de empezar el primer paso es instalar la gema

Creando la ventana de Gosu

En la mayoría de los frameworks para crear juegos el primer paso es crear una ventana, para eso, crearemos una clase del tipo Window que trae la librería y llamaremos a su método show.

640, 480 son las dimensiones de la pantalla, en este caso 640 pixeles en el eje horizontal, y 480 en el vertical, el tercer parámetro indica si el juego corre fullscreen o no.

Una vez que llamamos al método show, ruby queda detenido en un bucle que pertenece a window y lo hará hasta que cerremos el juego.

Dibujando elementos

Dentro de la ventana vamos a tener un método principal llamado draw, este se llama todo el tiempo y sirve para dibujar todos los elementos especificados.

También necesitamos un elemento para dibujar, para eso vamos a crear una clase nueva llamada Player.

Dentro de la clase player es útil especificar un método para dibujar para mandarlo a llamar, de hecho por cada elemento en nuestro juego crearemos este método para dibujar, y de esa forma simplemente en el método principal de draw dibujamos todos los elementos.

En este ejemplo estamos dibujando al jugador en las posición 300,200, pero ahora iremos cambiando esas posiciones.

Moviendo elementos con Gosu

Para mover elementos necesitaremos convertir los números de posición dentro de player en variables que iremos modificando en el tiempo, para eso utilizaremos un nuevo método, llamado update

Este nuevo método update también tenemos que llamarlo dentro de la ventana principal, para eso también agregaremos el método update en la clase window.

Si ahora corremos el juego veremos la imagen moviéndose.

Los métodos draw y update de la ventana principal son importantes porque se mandan a llamar solos en cada ciclo y permiten dibujar y actualizar todos los otros elementos.

Utilizando el teclado

Para utilizar el teclado simplemente ocuparemos el método de GOSU button_down? a este método le podemos pasar las constantes que trae gosu para determinar si ese botón ha sido presionado, para mayor claridad veamos el siguiente ejemplo.

En este ejemplo sólo llamamos al método update si se presiona la tecla flecha derecha, y por lo tanto solo se mueve mientras la presionamos.

Por último veamos un ejemplo donde el objeto se pueda mover en más de una dirección.

Te gustó el tutorial?, comparte y espera la segunda parte.

Share Button

Director de DesafíoLatam. Ingeniero Civil Informático de la Universidad Federico Santa María. Emprendedor lean, dedicado al desarrollo de una mejor web con ruby on rails. Fanático de los números y las métricas, la música y la fotografía.