Skip to content

Novedades: Menú dinámico, animaciones avanzadas, y más

21 marzo 2010

Menú dinámico

Hace poco recibí las evaluaciones del jurado del CUSL4-UCA local, y una de las cosas en las que menos puntué fue, lógicamente, en la parte de finalización del proyecto. La verdad es que, hasta ahora, cualquiera que se bajara el proyecto poco podía ver, así que me puse a pensar. Por un lado, decidí que tenía que hacer que el menú fuera dinámico, para poder cambiar las opciones desde el código sin tener que andar con los programas de diseño gráfico cambiando los botones y exportando a png y tal. Por otro lado, tenía que indicar de alguna manera el acceso a la funcionalidad disponible.

Lo que he conseguido es, haciendo uso de la ya comentada clase customFont, diseñar un menú dinámico al que puedo añadir botones dinámicamente, simplemente indicando el texto y, atención, el color del botón! Ahora si un día me levanto en b&n simplemente tengo que cambiar los valores RGB en el código y los colores de los botones del menú cambiarán de forma acorde.

Lo mejor es que he mantenido exactamente la misma apariencia del menú original a la vez que la usabilidad ha aumentado un montón.

Animaciones avanzadas

Como comenté en la entrada anterior, me puse manos a la obra y conseguí implementar las ecuaciones de easing de Robert Penner en C++ y Gosu. Me he creado una pequeña clase Animación, con varios tipos de ecuaciones, a la que le indico los parámetros de la animación (posición inicial y final, tiempo y tipo de animación) y me devuelve la posición en cada instante.

Además, he añadido un parámetro de retraso, de forma que desde un mismo sitio del código puedo fácilmente encadenar animaciones, haciendo que unas comiencen antes que otras. En breve haré un vídeo para mostrar la apariencia y las diferentes ecuaciones.

Y más

Parece que Gosu no permite utilizar el cursor de ratón por defecto, así que me puse manos a la obra para buscar algún pack de cursores libres para usar. Al final encontré el pack LSD 1.0, con licencia GPL, y me gustaron bastante. El problema es que venían en el formato de cursores X11, que por lo visto es un formato bastante enrevesado.

Y enrevesado fue encontrar un programa que convirtiera los cursores a PNG. Tras mucho buscar encontré Xcur2png, un software GPL que hacía exactamente lo que buscaba, aunque tenía un problema: los píxeles blancos puros los ponía negros. Haciendo uso de la Mentalidad Software Libre, miré el código y vi que tenía un error a la hora de convertir los valores RGB. Cambiando un par de números ya funcionaba como un tiro.

He informado al desarrollador del programa, aunque dudo que me responda, porque el software parece ser bastante antiguo. Pero bueno, por lo menos mi juego ya tiene cursor🙂

No comments yet

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: