En el juego Hearthstone, hay cartas con imágenes animadas. Algunos ejemplos:
Las animaciones parecen estar compuestas de múltiples efectos:
- Sistemas de partículas.
- Desvanecimiento de sprites dentro y fuera / rotándolos
- Texturas de desplazamiento simples
- Un efecto de distorsión, muy evidente en la capa y el cabello del ejemplo 1.
- Efectos de humo en remolino, la luz en el ejemplo 1 y el brillo verde / púrpura en el ejemplo 2.
Los primeros tres elementos son triviales, lo que me gustaría saber es cómo se podrían hacer los dos últimos. ¿Puede esto incluso hacerse en tiempo real en un juego, o son animaciones pre-renderizadas?
Respuestas:
No sé si ya es relevante, pero la respuesta de Doug lo hizo bien
Solo quería agregar que yo mismo logré recrear las animaciones exactamente como están integradas en el juego usando los mismos recursos, mira aquí
Magni :
Medivh :
fuente
Algunas ideas vienen a mi mente y su implementación dependerá completamente del motor, las herramientas y, finalmente, el trabajo y la canalización de contenido.
Animación de sprites
Video animacion
Animación en el motor
Estos son los tres tipos de animación que conozco y con los que he trabajado. Hay pros y contras para cada uno, y en este caso particular, estoy más inclinado a los sprites y la animación de video, porque son menos intensivos en GPU.
En casos como este, el enfoque más simple es probablemente el enfoque correcto.
fuente
Una forma de hacerlo es usar un video en lugar de una textura. Ese video tendrá que estar preparado de antemano y deberá estar en bucle.
Otra forma es tener toda la escena del "personaje, las partículas, el movimiento de la capa" renderizada en un búfer que más tarde en el renderizado del marco se usa en lugar de la textura.
No tengo ninguna experiencia sobre cómo lograr estas dos soluciones en un motor 3D, pero creo que ambas son posibles en un motor 2D (creo que puedo hacer que esto funcione en MOAI, por ejemplo).
fuente
Tanto 4 como 5 se realizan desplazando una textura UV sobre el área, tal vez con una malla sobre la tarjeta que está ligeramente distorsionada (de forma estática). El diablillo de sangre también parece tener una segunda textura que multiplica la primera textura y no se desplaza por los rayos UV.
En general, no son efectos caros. Simplemente no son tan buenos como parecen a primera vista.
fuente
Casi todos los efectos se pueden lograr con herramientas de animación esquelética 2D como Spine. Un sprite es básicamente una textura en una malla 2D. La malla se transforma para hacer que la capa se mueva, etc.
Consulte el carrete de demostración para ver ejemplos de tales efectos. http://esotericsoftware.com/spine-in-depth#Features hay tiempos de ejecución para los motores / idiomas más comunes. Una herramienta similar es Spriter: http://www.brashmonkey.com
fuente