viernes, 25 de noviembre de 2011

Particle Maker

Como ya prometí en la entrada anterior, os voy a mostrar un pequeño prototipo del motor de particulas básico que programé hace un tiempo. Junto con el sistema de particulas cree un pequeño editor con funcionalidades mínimas para poner en marcha el motor y ver el resultado.
Es el motor de particulas que usé para crear los algunos de los efectos en DBZBX.

La interfaz permite cambiar parametros del tipo de particula para poder darle el aspecto deseado a nuestro efecto. Pero al ser un prototipo, esta interfaz no ofrece todas las funcionalidades que ofrece el motor. Tales como; poder cargar imagenes diferentes para las particulas, aplicar gravedad, interpolación entre 2 colores en lugar de 3, cambiar la región en la que se crean las particulas, modificar la cantidad de particulas, añadir emisores, usar distintos tipos de particulas en un mismo sistema (por ejemplo para poder crear particulas distintas a la muerte de otras) etc.

Por ejemplo, este efecto de fuego no lo podríamos realizar con la interfaz visual, ya que no nos permite cambiar la región en la que se crearan las partículas, ni la cantidad de partículas que se crearán en cada frame.

Para terminar, os dejaré el editor en vuestras manos por si quereis salsear con él. Aquí teneis los controles:

  • Flechas derecha/izquierda:  Ver ejemplos (notar que el único sistema de particulas editable es el primero, en un principio el "punto negro").
  • Clic y mover ratón: Mover el centro del sistema de partículas.
  • Espacio: Cambiar el color de fondo aleatoriamente.

Particles Maker version Windows: Descargar

Dado que se trata de un prototipo antiguo, puede contener errores, asi que como siempre, se aceptan sugerencias o incluso, reclamaciones para la versión de Linux.
Un saludo.

martes, 15 de noviembre de 2011

Abandono del DBZBX Online

Creo que alguna vez ya lo comenté y quise hacer pruebas para programar un DBZBX en C++ usando la excelente biblioteca llamada SFML. En su momento estuve metiendo horas en mi tiempo libre para ver que podía salir, y resulta que fué todo un éxito. Al mismo tiempo que lo hice, programé un motor de partículas del que hablaré y mostraré mas adelante.

Al programarlo en C++ y usar SFML pude compilarlo para otros sistemas operativos Unix, en mi caso Linux. En un principio no me gustó la idea de volver a crear exactamente lo mismo, ya que por mucho que no sea lo mismo hacerlo con estas herramientas, la apariencia sería la misma. Así que pensé en que podía orientarlo totalmente al juego multijugador online, que sería totalmente distinto y más funcional.

Totalmente motivado me puse manos a la obra y me puse a crear un sistema propio de conexion virtual usando el protocolo UDP, ya que en juegos a tiempo real suele ser (no siempre) más adecuado que el protocolo TCP. Puedo hablar y hablar sobre todos los aspectos que quería implementar y las ideas que me rondaban en la cabeza, pero esto es lo más relevante.

Resumiendo, llegué a implementar casi al completo la dimámica del juego, cuando me dí cuenta de que este proyecto no me llevaría a ninguna parte. Así que orienté el proyecto hacia la creación de un motor de juego para usarlo en cualquier juego 2D (también hablaré sobre esto), el cual tengo bastante avanzado.

Por ello, solamente quería dejar lo último (un prototipo, un alfa) que queda de este juego a todos aquellos que lo han seguido. Está compilado para Windows, pero tambíen puedo compilarlo para Linux si realmente alguien lo desea:

Windows version: Descargar
Linux version: Descargar

martes, 8 de noviembre de 2011

Muerte, vida y resurrección

A lo largo de estos últimos años posiblemente haya aprendido una valiosa lección. Me aparté de un blog que generaba gran cantidad de visitas y de un proyecto finalizado dejando a algunos usuarios decepcionados.

Resumiendo brevemente, puedo decir que al finalizar DBZBX como ya comenté, formé un grupo intependiente (Infinite2D) con Oskar (conocido como Trapso) que no llegó a cuajar en su totalidad. Falta de motivación, experiencia e incluso de gente dispuesta currar fueron factores influyentes. La falta de tiempo por mi parte tampoco estuvo ausente en este periodo de crisis, ya que -como a todos los desarrolladores independientes nos gusta decir- todos tenemos nuestra vida privada.

Fué la desaparición parcial de una especie de comunidad activa de usuarios dispuestos a dar su apoyo moral. Algo de lo que realmente me siento arrepentido, más que nada por haber dejado pasar esa oportunidad. Ésta es la razón principal por la que he creado un nuevo blog en otro host manteniendo el contenido anterior (tengo que pasarlo desde wordpress, estoy en ello), eliminando así las restricciones del hosting de wordpress.

¿Pero por qué este cambio tán arriesgado en el blog?
Aunque no haya sido una fácil decisión, es algo que no he podido evitar y ahora simplemente gozo de más libertad para publicar.

Espero poder resolver aquellas dudas que quedaron al aire respecto a DBZBX y espero llegar a generar ese interés en los demás manteniendo el sitio actualizado insertando contenido sobre proyectos tanto como diversos temas a mi parecer, interesantes.

Con esto, me gustaría hacer un llamamiento a todos los que aquí se mantuvieron para poder dar a conocer el nuevo paradero del blog. De hecho, ahora mismo permanece en la sombra por falta de popularidad. Demos un poco de tiempo a Google para que haga su excelente trabajo de busqueda. Intentaré publicar sobre temas como la programación general y el desarrollo de videojuegos, así como artículos de interés general o proyectos (¿Marked11?).

Saludos, gracias y bienvenidos otra vez.