Unity Spain
Post Antiguos => General (Antiguo) => Mensaje iniciado por: ftejada en Enero 21, 2016, 12:53:13 PM
Hola a todos!!!Me preguntaba como podria reproducir 6 clips de animacion que tiene un modelo de forma aleatoria... Es decir que empiece un nuevo clip al azar cuando termine el que se estaba ejecutando..... He estado mirando por internet y en la API pero no encuentro la manera de saber si un clip ha terminado mediante alguna funcion o por tiempo.... ¿No existen funciones para eso en Unity?? o es que todo tiene que hacerse por mecanim??? Saludos y gracias por adelantado.
Puedes usar animator sin tener que usar mecanim, me parece mejor que usar el legacy. Como siempre puede haber varias formas de hacerlo, a mí ahora se me ocurre poner eventos en las animaciones, en el último frame, y que este evento llame una función que reproduzca otra animación aleatoria, usando Animator, si prefieres usar Animation hay una función que se llama 'PlayQueued' (http://docs.unity3d.com/es/current/ScriptReference/Animation.PlayQueued.html) que te puede servir, pero claro tienes que tener en cuenta que si la llamas por ejemplo desde el update puede cargarte muchas animaciones en un segundo y que las animaciones por lo general no duran tan poco, entonces cuántas animaciones pondrá a la cola durante una animación¿?
PD: No creo que escoger una animación aleatoria sea un problema pero si es así sólo tienes que ponerlas en un array y pedir un numero random, luego tomar la animación que esté en esa posición.
[quote author=juanma_teso date=1453379615" data-ipsquote="" data-cite="juanma_teso" class="ipsQuote">Puedes usar animator sin tener que usar mecanim, me parece mejor que usar el legacy. Como siempre puede haber varias formas de hacerlo, a mí ahora se me ocurre poner eventos en las animaciones, en el último frame, y que este evento llame una función que reproduzca otra animación aleatoria, usando Animator, si prefieres usar Animation hay una función que se llama
Sólo texto | Texto con Imágenes