En casa del herrero…

!Buenas!

Si, lo sabemos, hemos incumplido nuestra promesa de publicar al menos dos posts por semana, pero ha sido por una buena causa. Hemos avanzado bastante, tanto en diseño como en desarrollo. Pero antes de las novedades, vamos a explicaros un poco el stack de herramientas y/o tecnologías que usamos los miembros del equipo para llevar adelante el proyecto. Destacar que antes de elegir estas herramientas, previamente investigamos y analizamos las mejores opciones, no nos tiramos a la piscina con el framework más novedoso del momento ni con la herramienta de dibujo más barata. Tuvimos otros criterios, como agilidad en el uso, manejabilidad, potencia de la herramienta, si ya se tenía experiencia previa con ella, etc…Aunque todo hay que decirlo, presupuesto no había mucho ni hay, así que si fué algo que nos condicionó a la hora de elegir nuestro stack. Aun así, nos quedamos con lo siguiente:

unity

Unity 3D (en su versión 4.6): Era algo que teníamos bastante claro incluso antes de conceptualizar el propio videojuego: “¡nuestro próximo proyecto estará montado con esto!” Habíamos oido hablar muchísimo de él, y la curiosidad y expectación fueron aumentando. Fué probarlo un par de meses, investigarlo, hacer unas pruebillas, toquitearlo allí y allá, y decidirnos. O Unity o ningún otro. Además, parece que el equipo que está detrás de Unity nos hubiera espiado, porque fué ponernos de acuerdo para hacer un videojuego en 2 dimensiones, y sacar Unity un enviroment para este tipo de juegos (antes de esta versión, Unity estaba enfocado a 3D, aunque se podía “trampear” para realizar juegos en 2D). Algunos miembros del equipo ya tenían experiencia previa con otros frameworks o herramientas para desarrollo de videojuegos, como puede ser Corona SDK o GameMaker Studio, y realmente se quedaron sorprendidos de la potencia de Unity, de la funcionalidad integrada de Mechanic para animar elementos, el motor de físicas, cámaras…

c#

C#: Dentro de Unity, el   nos da la opción de trabajar hasta con 3 lenguajes diferentes: Javascript, Boo y C#. Realmente con el lenguaje con el que más experiencia teníamos era con Javascript, puesto que algunos miembros del equipo habían trabajado como desarrolladores web (Front-End) en algunas empresas. Pero sabíamos de las virtudes y defectos de JS, y el tipado débil era un handicap que no queríamos sufrir en un proyecto así, en el que eramos “vírgenes”. Así que ojeamos Boo, y salimos espantados, como alma que lleva el diablo. Ya lo intuíamos, C# era nuestra mejor opción. La sintaxis era parecida a Java (ECMAscript), con el que ya habíamos jugado al menos en nuestra formación académica, así que dar el salto a este lenguaje nuevo para nosotros no fué tan duro. Aunque hay veces que los programadores se tiran de los pelos (aunque yo creo que ya lo hacían antes de programar…pirados).

ps

Photoshop vs Illustrator: necesitábamos algo para realizar los diseños de los personajes, fondos, items, en definitiva, de cualquier elemento del juego. Y nuestro diseñador, por aquel entonces, tuvo un dilema enorme: ¿Photoshop o Illustrator? Bueno, de PS no vamos a hablar mucho, dudo que alguno de vosotros no lo conozca aunque sea de oídas. Pero Adobe Illustrator, para el que no lo conozca, sería el análogo a PS pero para gráficos vectoriales. Cuando hablo de gráficos vectoriales hablo de esto. ¿Cúal elegir entonces? Pues en primer lugar se eligió Illustrator porque eso de poder diseñar independientemente de la resolución era una ventaja. ¿O no? Bueno, hasta que dimos con la resolución target de la cual iban a partir nuestros diseños, nuestro amado diseñador tiraba líneas vectoriales para crear a los personajes. Pero claro, esto le llevaba más tiempo que si lo hiciera con PS (en ambos casos usaba una mesa digitalizadora Wacom). Vectorizar quizá implique un poco más de mimo y de precisión a la hora de crear los diseños. Asi que finalmente nos decidimos por Photoshop, trabajando siempre con resoluciones acordes (grandes en cierta medida), y acortamos considerablemente los plazos a la hora de sacar gráficos. Aunque no lo creas fué algo que nos costó meditar, pero a que día de hoy creemos que elegimos bien.

Animación: Probamos un montón de software enfocado a animación 2D (Spine, Anime Studio Pro, incluso Flash) y todos tenían una pinta excelente, pero fué probar el sistema integrado en Unity para animación y no  dos veces: lo tenemos ya integrado en Unity, nos funciona bien para lo que queremos, que no van a ser animaciones muy complicadas…el hecho de animar directamente en Unity nos va a agilizar un montón las cosas, y así es. Obviamente habrá ciertas animaciones que no van a ser de interpolación básica con esqueleto, sino que serán frame to frame y en esos caso si que consideraremos usar otro soft más acorde. Pero hasta entonces…

71rF86RjaRL._SY300_.png

Trello: hablaremos más de ella cuando toquemos el tema de las metodologías de desarollo, y cual de ellos utilizamos en nuestro proyecto. Pero de momento sólamente destacar que usamos un tablero pseudoKanban en el que gestionamos nuestras tareas asignadas como miembros del equipo y por el cual estas pasan por un flujo de estados (“pendiente”>”en progreso”>”completo”).

Hasta aquí las herramientas más importantes que usamos día a día con este videojuego.

¿Qué te parecen?