viernes, 22 de agosto de 2014

iTween: Ejemplos de uso

En al entrada anterior hice una presentación al plugin iTween. En esta voy a poner unos ejemplos del uso que he dado a este plugin en las 2 alphas de los juegos que presenté. Todo esto como parte del camino para llegar a la cámara que usé para los juegos.





En el vídeo se pueden ver todos los ejemplos de los que voy a hablar. Para ser sincero, la verdad es que no todos esos ejemplos estaban hechos con iTween en el momento de presentar los juegos, y en los vídeos que se mostraron, la mayoría si, y los demás los incluyo porque ahora estoy transformando ese código, que estaba hecho más rudimentario a iTween para tener un código más sencillo y uniforme. 




Temet Nosce:



  • Vibración de la cámara: Al recibir daño, tanto de un enemigo, como si nos caemos por un precipicio y nos damos contra el suelo, la cámara vibra un poco para hacernos ver que estamos recibiendo daño. En realidad me parece mejor tener una animación de recibir daño del enemigo, pero no tenía tiempo y esto es más sencillo. Solo hay que usar el método ShakePosition, con una amplitud máxima de la vibración, las direcciones en las que queremos ese movimiento, y el tiempo que va a durar y ya se encarga él solo. Hacer efectos de que se mueve la cámara en plan terremoto sería muy sencillo con este método.



  • Vibración del enemigo: Al recibir daño el veneno, parece que se teletransporte alrededor de su posición durante unos segundos. En realidad es una vibración igual que la del caso anterior, pero aplicado con mucha más distancia, por eso parece como si se teletransportara. Un efecto hecho mediante pruebas, sin esperar ese resultado que finalmente me gustó mucho. Tiene su lado feo y puede dar lugar a glitches, pero eso lo cubriré en otro artículo.



  • Transición a verde: Cuando pasamos a la segunda parte de la primera pantalla, vemos todo en verde, esto se consigue mediante un efecto de post-proceso, pero no me gustaba como este efecto aparecía de repente, por eso hice con iTween una pequeña animación para que la transición fuera algo más suave. El valor de intensidad de este efecto de imagen no es una de las cosas que iTween trabaje por defecto en ninguno de sus métodos, pero con el método ValueTo podemos animar las transiciones de casi cualquier propiedad de Unity.



  • Veneno hinchándose: En la parte final de la pantalla, muchos venenos se unen creando un super-veneno que actúa de enemigo final. Hay algo de parafernalia en esta animación, movimiento de varios enemigos, uno de los venenos se va hinchando y hay un efecto de partículas que cubre un poco la escena. Dejando de lado la parafernalia efectista, lo principal es ver como un veneno crece y crece hasta convertirse en un enemigo gigante. Fácil de conseguir con la función ScaleBy que nos permite animar un escalado. En realidad no es tan sencillo, porque al escalar el objeto se hace desde su centro de masas, por lo que no crece hacia arriba, sino en todas direcciones, metiéndose en el suelo, así que a la vez que lo voy escalando lo tengo que ir moviendo hacia arriba para que no penetre el suelo.



Las Zamburguesas:



  • Movimiento de hundir zamburguesa falsa: Cuando pisamos una zamburguesa falsa, esta se hunde en el agua, pero cuando dejamos de pisarla, porque hemos seguido adelante o nos hemos matado, vuelve a flotar. Este movimiento es muy básico como el que se vio en el primer artículo de iTween, es un movimiento sobre una línea con MoveBy, pero cuando se completa el movimiento, el método que se ejecuta cambia el signo del movimiento y vuelve a hacer la misma llamada. Esto hace que ahora suba. Si además queremos que vuelva a bajar, como si rebotase un poco, no hay más que cambiar la distancia a recorrer y volver a mandar para abajo. Esto ya a nuestro gusto. Aunque la verdad es que no estoy contento con el resultado final, y tengo que pensar mejor cómo mejorarlo.



  • Animación del HUD: El HUD del juego de las zamburguesas es importante. Es cómo se juega, los botones se ponen en amarillo la fracción de tiempo en que debemos dar a los botones. Al igual que con la transición a verde en Temet Nosce, no me gustaba que apareciera de repente, así que doy un pequeño tiempo de transición, 0.1 segundos, si el vídeo está a 30 fps, esta transición se hace en apenas en 3 frames, por lo que no se si lo veréis bien, pero comparando la transición inmediata y con esta pequeña animación, yo si noto la diferencia. Se hace también con ValueTo.



Y con esto doy por presentado más que de sobra el plugin, seguiremos con las extensiones de este plugin para seguir trayectorias, y cómo uso esto para la cámara del juego.

No hay comentarios :

Publicar un comentario