viernes, 15 de abril de 2016

UNITY3D. Diseñando un personaje para un RPG en 2.5 dimensiones

Siguiendo con el aprendizaje de UNITY 3D, comencé por la base de manejo de la herramienta siguiendo el curso de EDX UNY201.x Introducción al desarrollo de videojuegos con Unity

Es un curso muy recomendable para empezar, porque el entorno de UNITY3D es algo complejo y requiere algo de entrenamiento. UNITY3D es un entorno para programar aplicaciones gráficas y videojuegos que podría considerarse una mezcla de Flash, Photoshop, editor de C# y editor de máquinas de estado, por lo que la curva de aprendizaje no es sencilla. 

Es recomendable hacer varios tutoriales para aclararse un poco con el manejo. Tras ese curso de manejo de la interfaz, comencé el curso del libro Mastering Unity 2D Game Development. 

Interesante libro para aprender a hacer juegos 2D en UNITY3D
El libro es interesante y fácil de seguir. Va guiando al lector poco a poco por todos los componentes de UNITY3D para hacer un juego en 2D, en este caso un RPG

Como no me gustaban demasiado los personajes que aparecían para usar como ejemplo y con mi recién adquirida Wacom INTUOS Art me decidí a crear el personaje principal del juego. 
 
Mi nuevo juguete, la Wacom INTOUS Art
Hasta aquí, sencillo. Como siempre inicié los bocetos en papel, escaneado posterior y esta vez, con la Wacom, en el programa de edición gráfica pasé al entintado. Para ser limpio emplee capas para colocar la cabeza, el cuerpo, los brazos y las piernas y así tenemos nuestro personaje en postura de pie, sin hacer gran cosa (en general, a esta postura en los juegos se la llama idle). 

Primer boceto en papel

Boceto entintando y coloreado con la Wacom

El siguiente problema a resolver es animarlo. Aunque recomiendo el libro "The Animator Survival Kit" de Richard Williams que es una auténtica maravilla, emplee un atajo y recurrí a los videos de animación de Alan Becker que tampoco están nada mal. Recomendable los "Animating walking cycles" y "Animating Run cycles". Con este información cree a mano la secuencia del caballero. En este caso, dado que el caballero debía correr, emplee el segundo. Como las piernas y brazos estaban en capas me resultó relativamente sencillo alcanzar las posturas de carrera. Y aquí tenemos la secuencia completa. Parece que va todo bien... 

 
Alan Becker. Animating Walk Cycles

 Alan Becker. Animating Run Cycles
 
 
Boceto del esquema básico de running de Becker


Aplicando el esquema básico de running de Becker a nuestro caballero más el idle


Esta figura se importa en UNITY y con el SPRITE EDITOR se puede dividir automáticamente en frames para generar una animación. ...pero... 

  1. En el proceso de generar las piernas moviéndose no fui lo bastante limpio (al copiar y pegar sobre todo) así que el alrededor del personaje quedó como "polvoriento". Esto que es un poco descuidado en apariencia provoca muchos problemas posteriormente... En UNITY las animaciones se generan automáticamente, si queremos, el SPRITE EDITOR detecta los frames y los divide...si están llenos de porquería localiza la suciedad como frames de la animación y toca hacerlo a mano, lo que consume más tiempo que si hubiéramos sido limpios desde el principio. SURVIVAL RULE #1: SÉ LIMPIO HACIENDO LOS SPRITES 
  2. Como los SPRITES los cree con cierta libertad, tenían anchos distintos...de este modo el capturador automático de UNITY3D les da una anchura y coloca el centro en el centro de cada sprite. Al generar una secuencia, si los SPRITES no son simétricos, el personaje corre cambiando su centro geométrico dependiendo de la forma de la figura, creando un efecto caótico. SURVIVAL RULE #2: QUE TODOS LOS SPRITES QUEPAN EN UNA CAJA CON LAS MISMAS DIMENSIONES Y MANTEN FIJO EL CENTRO DE LA FIGURA
  3. Cuidado en el SPRITE EDITOR cuando recortes a mano...puedes usar como pivote un extremo, que es cómodo en algunos casos...pero cuando generes una animación o hagas girar la figura, ésta lo hará sobre ese punto y no sobre su centro creando un efecto como si el personaje fuera una puerta que se abre del todo...muy poco realista...SURVIVAL RULE 3#: COMPRUEBA QUE EL PIVOT ES EL CENTRO. 
  4. Si no quieres que el sprite salga borroso, el Spritesheet tiene que tener un tanto el ancho como el alto que sean potencias de dos. SURVIVAL RULE #4. USA POTENCIAS DE DOS PARA HACER LA HOJA DEL SPRITE.

Las survival rules pueden salvar tu vida...y tu paciencia.
Y aquí tenemos al caballero corriendo en un escenario creado en UNITY3D usando recursos gratuitos libres de derechos extraidos de los enlaces que he citado en otras ocasiones en entradas previas.

video



No hay comentarios:

Publicar un comentario