viernes, enero 23, 2015

Refinando el sistema de diálogos

He estado trabajando en implementar los cimientos del sistema de diálogos (anteriormente solo había escrito el parser) y el estado de juego que se encarga de mostrarlo y manejarlo. Sabía que con el tiempo aparecerían las debilidades que se me habían pasado por alto al crear el nuevo formato, y ayer choqué con algunas dificultades. Mayormente los problemas derivan de la simplicidad de las respuestas, que no pueden especificar cadenas de condiciones o acciones.
Analizando esta situación me percaté de que el sistema se podía mejorar un poco más. Actualmente uso nodos para las líneas de los NPC y bloques de respuestas. Esto tiene un problema: no puedes usar una misma respuesta para dos nodos, hay que duplicarla. La solución es obvia: separar las respuestas en nodos propios. Eso permite además complejizar la sintaxis para incluir cadenas de acciones como entregar/quitar varios objetos.
Espero poder implementar los cambios en un par de días y además adelantar algo en el editor de diálogos, que está abandonado desde hace un mes.

martes, enero 20, 2015

Ya está a la venta mi novela

Yoss me escribió para avisarme de que el libro ya está a la venta y los miembros del taller literario que lo han leído están encantados. No está nada mal para ser la primera vez. Ahora tengo que dedicarme a conseguir un agente literario para lograr la publicación en más países.

jueves, enero 15, 2015

Estados de juego casi listos

Al fin logré resolver el misterioso asunto de la herencia en AngelScript, que había estado reteniendo todo el desarrollo. El asunto se solucionaba usando interfaces, que viene a ser como una clase abstracta. Existe la cláusula abstract, sin embargo, eso impide que la clase sea instanciada en forma alguna (solo sirve como clase ancestro), cosa a la cual no le veo sentido o mucha aplicación práctica. Pero así es la POO.
Luego de resuelto ese enojoso obstáculo, me tomó un poco reajustar el código para que los estados de juego funcionen. Faltan detalles por afinar, pero no he estado muy bien de salud en estos días, aparte de que la lucha diaria por el sustento me ha robado algo de tiempo. Pero en esencia, es posible entrar en el modo de juego y volver al menú principal, lo que prueba que el sistema funciona.
Una vez dejado atrás ese asuntico, queda otro problema por resolver. Para emular por completo la funcionalidad de Unity3D, e incluso lo que había implementado en mi primer proyecto, necesito dominar el componente ScriptInstance, algo que no he logrado. Con eso podría asociar scripts a los nodos y ejecutarlos al crear la entidad, o al actualizarla. Parece que esto me tomará algún tiempo tenerlo controlado, porque no he logrado que nadie me aclare qué rayos está pasando con los scripts. Antes al menos se ejecutaban, pero ya ni siquiera eso.
De no lograr que funcione, tendré que buscar una solución alternativa, pero quisiera evitarme la molestia de tener múltiples clases para manejar los distintos tipos de IA de las entidades.

martes, enero 13, 2015

OpenShot me queda chiquito

Ayer me dediqué a la tarea de preparar los segundos iniciales del trailer del proyecto. Siempre he usado OpenShot para mis ediciones sencillas, y pensé que ésta no tendría nada de complicado que no pudiese hacer con este software de edición de video. Sin embargo, parece que estoy equivocado.
El trailer en sí no es complicado, el problema es que OpenShot se me ha quedado chiquito, y eso que solo necesito hacer cosas sencillas, como mostrar varios textos en pantalla. El caso es que el editor de títulos es muy básico: ni siquiera puedo cambiar el tamaño de la letra o hacer títulos con más de dos líneas. Si quiero algo mejor, tengo que acudir a Inkscape. Si quiero títulos 3D, tengo que usar Blender. No puedo ubicar los textos donde quiera, sino en las ubicaciones predeterminadas, izquierda/arriba, derecha, abajo, etc.
Nada, que quedarse corto es poco, me esperaba más de OpenShot, y el tiempo operativo no me da para aprender otra cosa, pues quiero tener listo el trailer en un mes. Parece que tendré que poner en la cola de tareas pendientes volver a probar Lightworks, esta vez en serio, o pasarme a Adobe Premiere.
Y bueno, ya que hablamos del trailer, les adelanto que tendrá su propia música, compuesta especialmente para el proyecto. Y espero que les parezca divertido.

miércoles, enero 07, 2015

Blender: poniéndose al día con los grandes

Acaba de ser lanzada la primera versión de Blender este año: la 2.73, con la habitual lista de cambios. Resulta interesante, además, leer los proyectos más interesantes que se cocinan en este momento. En especial, la integración en Blender de tecnologías desarrolladas por los grandes de la industria cinematográfica.
En concreto, se trata de tres propuestas:
  1. Alembic, un formato de archivo compacto diseñado por Sony Pictures Imageworks y Lucasfilm, y que es el más utilizado en la industria del cine en la actualidad.
  2. OpenSubdiv, una biblioteca para generar y dibujar superficies de subdivisión en el GPU, creada por Pixar. De hecho, ya existía una rama de Blender con OpenSubdiv, pero por razones de rendimiento decidieron esperar a la próxima versión de Pixar.
  3. Ptex, una biblioteca de Disney que soporta texturas de imágenes sin necesidad de hacer el habitual unwrap previo de las mallas.
Detalles no muy relevantes para los que desarrollamos juegos, pero que contribuyen a convertir Blender en una herramienta a tener en cuenta en entornos profesionales.

lunes, enero 05, 2015

De vuelta

Han sido unos largos días de fiesta y trabajo (fiesta para otros, trabajo para mí), pero ya estoy de vuelta.
Unos días muy productivos, tanto que ya puedo decir que mi tercera novela va en camino de terminarse en algún momento de este año. Entre el 30 de diciembre y el 3 de enero el avance fue sustancial, ahora solo queda llenar los espacios vacíos. Esta vez es algo diferente, un universo nuevo.
El proyecto de juego no avanzó tanto, pero conseguí un par de objetivos claves y destapé problemas nuevos. Así es la vida del programador.
De paso, decidí saludar el año nuevo con distribución nueva: al fin me he instalado Linux Mint 17.1. Y Windows 8.1 también. Ya los expertos han explicado en detalle las ventajas de una y otra, así que no me detendré a hablarles sobre los emblemas para carpetas y demás zarandajas. Simplemente, tocaba actualizarse ya.
O sea, que el trabajo no ha parado en estos días y pronto habrá más cosas para mostrar.

lunes, diciembre 29, 2014

Hasta el año que viene

Todo parece indicar que esteré en la oficina muy poco tiempo en estos dos días, así que desde ahora me despido, nos volveremos a ver el año próximo. Les deseo a todos los que me leen un feliz 2015, con mucha prosperidad, tranquilidad, en fin, todo lo bueno.
Trataré de traerles buenas noticias a mi regreso y muchos avances en el proyecto, aunque la falta de internet en casa me limitará un poco en lo que puedo hacer. Se han estado publicando artículos al respecto en este mes, asegurando que se está haciendo todo lo posible para que haya más internet (no específicamente en las casas), pero no hay fechas concretas y los precios serán sin duda, astronómicos en sus inicios.
Así que los dejo por ahora.