Entradas

Cómo puede el juego saber cuándo fue instalado (Android)

Imagen
Con el Mategotchi me he encontrado con la necesidad de saber cuándo instaló el jugador el juego en su dispositivo Android. Es algo que puede ser necesario si en el juego hay acontecimientos que deben suceder pasado un determinado tiempo desde que se arrancó el juego por primera vez, por ejemplo. Esto no sería un problema si el juego hubiese necesitado esa información desde el primer momento. Hubiera bastado con guardar la fecha la primera vez que se ejecute. Pero, ¿qué pasa si eso se incorpora en una actualización posterior? La fecha obtenida no sería la de instalación del juego, si no la de instalación de la actualización.  Por tanto, lo único que pude fue suponer que dicha información sería guardada en el teléfono por el propio sistema. Y que de alguna forma podría consultarla. Godot no tiene acceso a esta información, por lo que hay que hacer un pequeño programita en Java que haga este trabajo por él. Por suerte Godot tiene un sistema de plugins que permite añadirle este tipo de fun

Shader para cambiar la paleta

Imagen
Antiguamente, los gráficos de ordenador solían usar color indexado. Es decir en lugar de guardar los valores de rojo, verde y azul de cada píxel, lo que se guardaba era una referencia a uno de los colores de una paleta. Dicha paleta podía ser fija o variable, pero siempre era de una pequeña cantidad de posiciones. Con esto la imagen ocupaba mucha menos memoria debido a que se necesitaban muchos menos bits por píxel. Esto era una limitación, ya que sólo se podían mostrar en pantalla tantos tonos como posiciones tuviera la paleta. Pero permitió algunos efectos curiosos en aquellos ordenadores que permitían cambiar los colores de la paleta. Como el que pongo a continuación, extraido de:  http://www.markferrari.com/ La imagen, en realidad es estática, lo único que hace es ir variando los colores de la paleta, con lo que cambia el color de los píxeles que están referenciados. Otra utilidad era la reutilización de sprites en los juegos multijugador. De tal forma que a cada jugador se le asig

Shader CRT

Imagen
Dado que el juego que estoy desarrollando ahora mismo tiene un look pixel art (pero de pixeles bien gordos), he pensado que la resolución que estoy manejando es cercana a la de los juegos de los ordenadores de los años 80. Los cuales se veían en monitores de tubo o CRTs. Y me han dado ganas de probar como quedaría visto en uno de ellos. Para hacer esta prueba necesitaba un shader que produjera ese efecto.  Lamentablemente Godot todavía es un motor de videojuegos poco usado por lo que no hay una gran variedad de recursos disponibles. Y los pocos que he encontrado no funcionaban exactamente como yo buscaba. Así que le he echado el rato a hacer uno a mi gusto. He hecho uno en el que se pueden combinar diferentes efectos y ajustarlos individualmente. Este es el resultado que he conseguido. Efecto de Scanlines La imagen la formaba un haz de electrones que recorría horizontalmente la pantalla dando un número determinado de pasadas. El hueco entre cada línea quedaba a oscuras, salvo por el br