nomoregames 35 Report post Posted March 13, 2020 Hola a todos Hace poco postee sobre como hacer que durante una transición se calculara la posición de un "hueso 2d"... A lo que viene esto es que, me di cuenta que para lograr entender eso primero necesitaba comprender como funcionan las transiciones Concreta-mente esta parte: Me he mirado tutoriales y leído pero no logro entender para que sirve cada opción... (lo que si que entiendo son las condiciones... hasta allí llego) Share this post Link to post Share on other sites
lightbug 833 Report post Posted March 14, 2020 Las opciones son bastante auto-explicativas (salvo "has exit time" y las interrupciones): has exit time: la transición (A->) va a pasar una vez que el clip A termine. Fixed duration: es un tiempo absoluto o un porcentaje? duration: la duración de la transición. offset: el offset de la transición. interruption source: quién es capaz de dar la orden de interrupción? si está pasando una transición de A -> B, y se da una transición de A -> C, entonces (si estuviera puesto currentState ) "A" estaría cancelando la interrupción. Si pasa algo similar (A -> B) pero esta vez se da la transición de B a C, si está puesto next state entonces B cancelará la transción. El resto son variaciones de esto. Ordered interruption: las fuentes de interrupción siguen un orden? es decir, se deberá tener en cuenta su prioridad? Conditions: las condiciones. ¿Leiste esto?: https://docs.unity3d.com/Manual/class-Transition.html Share this post Link to post Share on other sites
nomoregames 35 Report post Posted March 14, 2020 Gracias por tu respuesta lightbug Por supuesto, lo primero que ice cuando se me planteo el problema fue ir a la documentación de unity... Y después de leerla y "entenderla " me di cuenta de que, tan, tan bien no la entendí, ya que no fui capaz de solucionar el siguiente problema https://drive.google.com/open?id=1rKzp0y2DXUudKtom144pzAilRlq5q0Bc Si te fijas, cuando desmarco has exit time la animación se reproduce infinitamente... ¿no se tendría que reproducir una vez y ya? Sin embargo cuando lo marco se reproduce dos veces.... Por que ocurre? que es lo que no entiendo? Gracias Share this post Link to post Share on other sites
lightbug 833 Report post Posted March 15, 2020 (edited) 22 hours ago, nomoregames said: Si te fijas, cuando desmarco has exit time la animación se reproduce infinitamente... ¿no se tendría que reproducir una vez y ya? La animación está en loop. Algo así no te convienen que esté en loop, es mejor jugar con las transiciones e interrupciones. Fijate que tenés un warning que te dice que si no le pones condición de salida no va a funcionar la transición de DownUpAttack a PrepareAttack . Funciona con exitTime, de lo contrario no tiene razón para salir. Si tenés un estado idle en tu código deberías pasarle el trigger para regresar a idle (no a prepareAttack). 22 hours ago, nomoregames said: Sin embargo cuando lo marco se reproduce dos veces.... Sí, pero no :). Osea, se va a reproducir la primer vez con la transición de PrepareAttack a DownUpAttack, una vez que llega, ahí se cuenta la "verdadera" reproducción (va a depender de la transición de entrada y de la de salida, por lo que veo la de abajo hacia arriba es más lenta que la otra). Si el clip es muy cortito y la transición tiene un tiempo considerable, entonces la primera reproducción debería ser parte de la transición. Probá con eliminar (poner a 0) la transición de prepareAttack a downUpAttack. Lo que hace mecanim es reproducir la animación de destino al momento de la transición, entonces si la transición tarda más de la duración de un clip, lo que vale (para el estado) es el segundo clip. Con la de salida seguramente no pase esto porque prepareAttack es mucho más larga que DownUpAttack. Edited March 15, 2020 by lightbug Share this post Link to post Share on other sites
nomoregames 35 Report post Posted March 15, 2020 Se que quedare como un inepto pero... Exactamente que es lo que tengo que hacer?? A que te refieres con que esta en loop, que hago para cambiarlo Se que entro lo leído y lo que me explicaste no me tendría que quedar ninguna duda Share this post Link to post Share on other sites
lightbug 833 Report post Posted March 15, 2020 1 hour ago, nomoregames said: A que te refieres con que esta en loop, que hago para cambiarlo Andá a las opciones de importación y fijate que en Animation dice "Loop" por ahí :) Osea el clip tiene la propiedad esa, cosa que nunca me gustó, prefiero que el estado lo auto-loopee. Share this post Link to post Share on other sites
nomoregames 35 Report post Posted March 17, 2020 Opciones de importación?? Donde estan? En serio ahora me siento así: Share this post Link to post Share on other sites
lightbug 833 Report post Posted March 17, 2020 7 hours ago, nomoregames said: Opciones de importación?? Donde estan? En serio ahora me siento así: Jaajaj Seleccioná el clip, te tienen que salir en el inspector. Si es un modelo importado, claro está. Si lo estás haciendo en Unity quizás en la misma ventana de animación (ctrl+6) tengas la opción (?). Share this post Link to post Share on other sites