Tengo una pregunta no necesariamente específica para ninguna plataforma o API, pero más específica para las interacciones en el código entre animaciones.Animación y lógica
Un juego es un buen ejemplo. Digamos que el jugador muere, y hay una animación de muerte que debe terminar antes de que se elimine el objeto. Esto es típico en muchos casos donde alguna animación tiene que terminar antes de continuar con la acción que normalmente seguiría. ¿Cómo harías para hacer esto?
Mi pregunta es sobre el control y la lógica de la animación. ¿Cómo diseñarías un sistema que sea capaz de conducir la animación pero al mismo tiempo implementar un comportamiento personalizado?
El problema que suele surgir es que la lógica del juego y los datos de animación pasan a ser codependientes. Es decir, la animación debe devolver el código o contener metadatos para la duración de las secuencias de animación. Lo que es aún más un problema, es cuando una animación, que tiene que desencadenar algún otro código, digamos después de que 1.13s genere un sprite personalizado, esto tiende a dar como resultado una anidación profunda de código y animación. Una bomba con un temporizador sería un ejemplo de lógica y animación donde ambas cosas interactúan, pero quiero mantenerlas lo más separadas posible.
Pero, ¿qué harías para mantener la animación y el código en dos cosas separadas?
Recientemente he estado probando mgrammar, y estoy pensando, un DSL podría ser el camino a seguir. Eso le permitiría a la animación o al animador, expresar ciertas cosas de una manera presumiblemente segura que luego entraría en la cadena de contenido ...
me gustaría responder a esta pregunta, pero estoy teniendo problemas para entender lo que se quiere separar - hacer desea separar el código de la lógica general del juego y el código de gráficamente renderizar el juego? – CiscoIPPhone
la animación es impulsada por algo, pero las animaciones son complejas, tienen que volver a llamar en código en algún momento. A querer minimizar esto y desacoplar tanto como sea posible para averiguar si hay un conjunto mínimo de características que uno necesita para que funcione. –