lunes, 16 de junio de 2014

Animación con #Sprite en #Unity o animación con secuencias de imágenes 2D

Cuando deseamos elaborar un videojuego tipo 2D un factor importante es conocer el funcionamiento de los sprite en unity.
A continuación indico de forma breve como se procede con el trabajo de importación de sprite en Unity.



Antes que nada es necesario conocer que los sprite son en otras palabras secuencia de movimientos de algún objeto o personaje populares en las consolas de videojuegos como Nintendo en 1978.

Para importar una secuencia de sprite debemos de colocar el archivo PNG dentro del proyecto de unity e indicarle que esta imagen pertenece al tipo de textura de sprite.

Si vas a importar movimiento por movimiento puedes trabajar con el sprite mode single, para que sea una sola imagen pero si vas a trabajar en un solo png con una secuencia de movimientos debes de cambiar del sprite mode single a Multiple y dar clic en el botón Sprite Editor.

En mi caso he seleccionado una imagen de secuencia de movimientos de internet y la imagen posee varios movimientos. Al dar clic en Sprite Editor se habilitará una nueva ventana que te permitirá realizar el corte por slice de cada uno de los movimientos, y así te evitas tener que poner movimiento por movimiento, y unity lo hace complemente rápido por tí.

En este venta posees la opción en Slice de realizar de forma manual dibujando el recuadro en cada elemento, o usar la opción automática de unity y dar clic en slice y automáticamente unity selecciona los elementos, siempre es bueno revisar que los cortes sean los correctos. luego de haber arreglado los cortes de ser necesario procede a dar clic en "apply" y se procederán a generar la secuencia por cada imagen en la vista project.


Ahora el proceso a seguir es realizar la animación incorporando la posición inicial de la animación en la scena, y luego crear la animación en la opción "window/animation". Luego de crar la secuencia fluida de la animación procederemos a crear todas las animación que tiene el personaje.


Para adicionar al mismo personaje más animaciones puedes dar clic en el nombre de la animación en la ventana de animación, y se habilitará la opción "Crear nuevo clip".


Luego de crear todas las animaciones necesarias puedes revisar cada una de estas en la vista Animator y proceder a crear la secuencia y las validaciones respectivas para que se active cada animación en el momento necesario. Eso será materia de otra publicación.


Si deseas revisar esta publicación en video puedes verla en el siguiente link de donde yo tomé como base para realizar esta entrada. https://www.youtube.com/watch?v=Kq4MkZDlTQY

Les dejo la imagen del sprite para que pueden hacer sus pruebas.

9 comentarios:

  1. Hola. Estoy empezando con unity, y como es lógico, lo estoy haciendo en 2d. Desconocía cómo hacer una animación, partiendo de secuencias de imágenes. Me ha resultado bastante útil. Muchas gracias.

    ResponderEliminar
  2. Me alegro que te haya sido útil. Revisa los demás post y seguro encontrarás scripts valiosos para tus proyectos.

    ResponderEliminar
  3. hola. hice un personaje con la secuencia png, el tema es que necesito agregarle un collider a este para que cuando choque con otro collider pase de escena. se puede?

    ResponderEliminar
  4. Claro que puedes asignarle un collider a tu imagen. Para eso en las opciones de físicos tienes una pestaña que se llama físico 2D, ahí encontraras el collider 2D que es el que necesitas debes de tener algo en claro que si trabajas en 2D todos los demas elementos deben de tener tambien los físicos en 2D y no en 3D porque o sino no hay relación entre ellos.

    ResponderEliminar
  5. Buenas, yo tengo la siguiente duda. Dado que la animacion es una secuencia de imagenes, en mi caso una babosa que se estira el collider no se deforma junto con la babosa? no se si me explico (uso plygon collider 2D).

    ResponderEliminar
  6. el collider va a tomar el alto y ancho de la imagen. Si la imagen es más alta si se va a modificar.

    Saludos.

    ResponderEliminar
  7. Tu post me fue de gran ayuda, gracias! Pero aún tengo unas preguntas. ¿Se pueden hacer animaciones con Unity? O sea, no hacer juegos, solo quiero hacer una animación/escena/cinemática. Vi un video en YouTube: https://www.youtube.com/watch?v=0f5bNhVthrs y me interesé mucho en hacer uno parecido. El sujeto que hizo esa animación dijo que usó Blender, pero no encontré muchos tutoriales de como usar ese programa. Espero su respuesta :)

    ResponderEliminar
  8. Respuestas
    1. A qué te refieres a ¿Cómo creé las imágenes?, son una secuencia dibujada en Illustrator o Photoshop, y lo guardas sin fondo en formato PNG.

      Eliminar