lunes, enero 28, 2013

SDL 2

Hoy he concluido la tarea de portar el proyecto a SDL 2, ya que no era posible mantener ambas versiones a la vez sin hacerme un lío con los #ifdef. SDL 2 permite dar soporte para Android, aunque hay que considerar que es código en desarrollo. Sin embargo, una buena cantidad de proyectos ya lo están usando y hay personas contribuyendo con parches a medida que encuentran problemas; no quiero pecar de apurado, pero me parece que el API se ha estabilizado cerca de una versión definitiva. El único problema, como mencioné, es que no es compatible con la rama 1.2. Esto trae como consecuencia que la adopción será más traumática, porque aunque los nuevos proyectos la están usando, hay miles de proyectos viejos que requerirán reescritura, por lo que es previsible un período durante el cual la 1.2 y la 2 coexistirán de alguna forma en las distribuciones. Período que no sé cuándo llegará, porque en la lista no se habla de fechas de salida.
Migrar mi código no fue tan trabajoso, la pérdida de tiempo estuvo en que miré primero en los tests incluidos en SDL2 y eso me llevó en la dirección equivocada. Un rato revisando la documentación aclaró mis dudas, lo cual no quiere decir que el código funcione, porque me quedan detalles por entender. Prácticamente todas las áreas de SDL han recibido cambios, los conceptos antiguos ya no son válidos (o solo están ahí para compatibilidad) y son varias las cosas que hay que volver a aprender. Se echa de menos algunos ejemplos que al menos cubran lo básico, pero bueno, cualquiera con algo de tiempo y un mínimo de inteligencias podría arreglárselas. Trataré de publicar una imagen cuando logre hacer funcionar esto.


viernes, enero 25, 2013

¿Qué se puede jugar este año?

Otra vez la conexión conspira contra el ritmo de publicación. Como casi siempre, para este año tengo algunos títulos en mente que no quisiera dejar pasar, solo que esta vez son muy pocos y uno de ellos ni siquiera sé si sale este año.
El primero es South Park, The Stick of Truth. El RPG de Obsidian aparenta ser por lo menos hilarante, habrá que ver en otros apartados cómo se comporta. Alpha Protocol fue decepcionante y Dungeon Siege III tampoco me causó gran impresión, sin embargo, este estudio se merece que le demos más oportunidades. También de Obsidian es recomendable no perder de vista Project Eternity, un regreso a los buenos tiempos, cuando los RPG eran juegos de verdad.
También en ese estilo, Wasteland 2 es algo que no deberían perderse. Fiel a sus orígenes, este es otro título que estoy seguro que los fans del género no han perdido de vista aunque la excitación de los primeros días ya pasó.
Y para no encasillarnos en la onda retro, Cyberpunk 2077 me ha puesto a babear, aunque no sé si lo tendremos este año. Me pregunto de dónde sacaré una tarjeta de video suficientemente potente para mover esto, que sin duda alguna está montado sobre el Red Engine, que es bastante exigente.

viernes, enero 18, 2013

De vuelta a los inicios

En estos dias he vuelto a mis inicios como programador de juegos: he iniciado un proyecto con SDL, todo 2D por supuesto. No voy a dar detalles por el momento hasta que tenga un poco más avanzada la idea, además en esta ocasión no se trata de software libre (al menos al principio) porque la idea es crear algo basado en un viejo juego para MS-DOS que gustó mucho durante mis años de preuniversitario y venderlo. Así que ahora ando en la onda retro.
¿Por qué un producto comercial? Pues bueno, es un objetivo que tenía en mente desde hace mucho tiempo y en los últimos tiempos las necesidades por acá han crecido, mientras que los salarios no. Creo que me vendría bien un techo decente que no se vaya con el viento y un cuarto propio con cierta privacidad, aparte de que no estaría de más poder ayudar a mis padres, que también están pasando sus propios apuros.
Por tanto, hace varios días que vengo trabajando en este proyecto, aunque solo tres o cuatro de programación. primero me di a la tarea de planificar bien qué funcionalidades adicionales quería implementar y qué bibliotecas adicionales podían utilizarse, porque habrá una versión para Android también. Espero tener una versión jugable en un mes o dos y agregar los detalles adicionales antes de mayo para lanzar un demo en esa fecha. Pronto habrán imágenes, así que manténganse en sintonía.

lunes, enero 14, 2013

A viajar se ha dicho

Desde hoy, o ayer (me disculpan la inexactitud, pero no sé si "entrada en vigor" se refiere al día especificado o al siguiente), los cubanos podemos viajar casi libremente. Menuda hazaña, se dirán la mayoría de los lectores, que han nacido y crecido con el derecho de ir a donde les de la gana, siempre y cuando tengan el presupuesto. En cambio, desde hace cincuenta años, los cubanos han requerido de una serie de trámites y una autorización gubernamental para salir del país. A partir de hoy (o ayer), eso desaparece.
Suponiendo que tenga el dinero, hoy mismo podría solicitar mi pasaporte y presentarme en la embajada de Japón para pedir una visa de turista (que me la concedan es otro asunto). No tendría que esperar que mi Director, o el Ministro si fuera universitario,  me firmara una carta autorizándome a viajar y que La Dirección de Inmigración me diera el visto bueno, luego de engavetar el papeleo el tiempo reglamentario que era de... los días que ellos quisieran.
Si me da la gana y los japoneses me lo permiten, podría quedarme allí durante 24 meses, sin exponerme a que el gobierno incaute mis escasas propiedades. Si decidiera radicarme allí, aún así tendría la posibilidad de regresar definitivamente a mi país cuando quisiera.
Un paso de avance, sin lugar a dudas. Lamentablemente, como el dinero apenas me alcanza para lo básico, no creo que la nueva ley me beneficie en algo.

sábado, enero 12, 2013

Otro prometedor título de CD Projekt Red

Los polacos de CD Projekt lo han vuelto a hacer. En una movida muy inteligente, han decidido cambiar radicalmente de tema para su próximo título y no sobre explotar la saga del brujo Geralt de Rivia. El teaser trailer tiene una pinta genial, tiene que ver esto:


jueves, enero 10, 2013

Otro epic fail

La decepción de esta semana vino de parte de Ubuntu 12.10. Hace dos días me di a la tarea (accidentada, pero por otras razones ajenas a Ubuntu) de instalar la última versión. Para mi sorpresa, luego de instalar el driver de Nvidia, el escritorio estaba completamente vacío, aunque respondía al click izquierdo. Los programas que lograba ejecutar no tenían decoraciones ni funcionalidad de ventana alguna. O sea, no podían maximizarse ni moverse. Una rápida consulta a Google me dio la respuesta: los drivers propietarios de Nvidia no se llevan muy bien con Ubnutu 120.10. La razón es fácil, los desarrolladores decidieron no incluir el pquete linux-headers-generic, requerido para compilar el módulo. Para colmo, el apt no nos advierte de que dicho paquete es requerido. De paso, no es el único, otras guías también recomiendan linux-source.
En mi caso, ninguno de los dos paquetes resolvió la situación, así que opté por desechar dos días de descargas y volver atrás. Afortunadamente también tenía en reserva la 12.04.1, y acudí a ella como la Princesa Leia a Obi Wan Kenobi. Según leí, parece que también hay conflictos con los drivers de AMD. Increíblemente, alguien le echa la culpa a Nvidia, "por no soportar bien Linux". A ver, si sacas un paquete de la distribución (que ya sobrepasó la capacidad de un CD, así que no sé a qué viene esa tacañería con los paquetes) y encima no lo marcas como dependencia de otro, no puedes ir por ahí diciendo que Nvidia no soporta Linux. Son los mantenedores de la distro los responsables de este enredo y a quienes deberíamos culpar, aparte de que Nvidia soporte bien o no a Linux (que no lo hace, eso hay que reconocerlo, pero tampoco lo hace AMD).
Pero bueno, son cosas que pasan. Mi experiencia con Mint ha sido buena, de hecho aún lo conservo en casa, pero UbuntuOne ha resultado ser una herramienta bastante útil, incluso para alguien con tan escaso ancho de banda como yo, y utilizarlo desde Xfce era bastante molesto. Aunque para ser precisos, UbuntuOne podría mejorar mucho en el apartado de usabilidad.
Tal vez me plantee subir cuando salga la 13.04, pero creo que primero me informaré un poco acerca de posibles problemas.

miércoles, enero 09, 2013

Al fin la rueda dio la vuelta

Me acabo de enterar que ayer se lanzó al fin el último libro de la saga de La Rueda del Tiempo. A estas alturas ni recuerdo en qué se quedó, porque lo último que leí fue A knife of dreams. Revisando las noticias, resulta ser que A Memory of Light era tan grande, que al final acabó partido en tres, así que aún tengo tres libros por leer para concluir la saga. Al final, ha demorado más en publicarse que mi propia novela (que debería salir en algún momento del 2015). Pero lo importante es que ya está aquí.

lunes, enero 07, 2013

De regreso al papel

Ayer dediqué gran parte de la mañana a trabajar en el sistema de diálogos del proyecto. La idea es implementar un editor de conversaciones y para ello necesito un formato que pueda ser interpretado fácilmente. La solución anterior era muy potente y flexible, pero requería programar a mano cada diálogo en Lua. Era común que un mes después no recordara qué hacía cada cosa dentro de aquel mar de condiciones.
Sin embargo, luego de enfrascarme un buen rato en la implementación del nuevo diseño, me percaté que la estructura del archivo Xml tal vez no era la mejor  para representar un diálogo complejo. Kiril me señaló que quizás la solución eran los flow graphs, con un formato propio para almacenarlos. Por tanto, tengo que volver a la "mesa de diseño" y descartar todo el trabajo de ayer. Sí, que le vamos a hacer, la programación tiene esas cosas jodidas de vez en cuando, hay que estar dispuesto a tirar código si quieres realmente hacer algo que sirva.

viernes, enero 04, 2013

Feliz año nuevo!

Ya estoy  de vuelta en la oficina (acá las vacaciones fueron largas) y bien metido en este nuevo año 2013. No puedo hablar de que tenga planes, porque pienso más bien esperar a ver cómo se desarrollan los acontecimientos para ir fluyendo con ellos (algo así como el "be water"). Seguiré observando el mundo del software libre y los juegos, que no va por buen camino en mi opinión, y aportando lo que pueda.
Sin caer en predicciones, les recomiendo que mantengan un ojo en Torque, este año podría darnos algunas alegrías con una versión completa para Linux. No está de más que sigan a Lime, que va avanzando lento, pero con funcionalidades impresionantes en su sistema de renderizado, aunque necesita un montón de trabajo en otros apartados. Aparte de eso les reitero que Unity es el motor que deberían estar aprendiendo ahora.
Si todos los astros nos son propicios, habrán más juegos para Linux, gracias a Steam, Desura y el crowd funding. No esperen un Call of Duty, porque la industria es un elefante muy grande y vencer la inercia cuesta trabajo. O más exactamente, dinero. Dinero de los jugadores, por supuesto.
Nos veremos la semana próxima.