Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Problema con Animation event

Iniciado por ftejada, Abril 20, 2017, 07:22:25 PM

Tema anterior - Siguiente tema
Hola!!!
 
Estoy intentando llamar a una funcion desde un evento de animación mediante el animator de mi character.
 
El caso es que no hace nada. Lo primero que comprobé es si me habia equivocado al meter el nombre de la función en el event de la animación. Pero está bien...
 
El script que tiene dicha funcion está en el mismo gameobject que tiene el componente Animator.
 
He probado a poner dentro de la funcion un Debug.Log() para que escriba algo por consola para ver si ejecutaba la función... pero por consola no escribe nada de lo que le pongo en el debug.log(), asi que por algun motivo a pesar de que los eventos estan creados llamando a la funcion, nada sucede. Tampoco me tira ningun error.
 
Alguien puede decirme si los event funcionan también en la version free de Unity 5.5? Para no seguir buscando. O alguna idea de qué pudiese ser???
 
He seguido los manuales y videos de Unity y en principio parece que lo hago bien, pero algo está pasando que no funciona...
 
 
 
Saludos

Todas las versiones de Unity son fully-featured todo anda en todo. Segun tengo entendido, nunca use eventos por eso no puedo decirlo con seguridad, pero el engargado de llamar a la funcion es el mismo clip. Vos seteas el event dentro de la linea de tiempo, y ahi mismo confiiguras la funcion a llamar. En animator te encargas de administrar los clips y la transicion entre ellos, y el clip se encarga de los eventos. Estas seguro que seteaste el event dentro del clip?

Gracias por contestar
 
 
 
Lo he hecho varias veces... Entro en el clip, voy abajo donde está el menu de los eventos, entre otros... pulso addEvent, lo coloco en donde quiero, le pongo el nombre de la función, paso variable si es necesario y pulso en "apply" para que se guarden las modificaciones en el clip... Creo que no me falta ningun paso... No?
 
Lo pruebo y no funciona. No se si me saltado algun paso, pero hago exactamente lo que hacen el video oficial de Unity... Incluso la funcion a la que llama el clip es publica por si las moscas, pero nada... no funciona
 
 
 
Alguna idea???
 
 
 
No se que puede estar pasando...
 
 
 
 

Cita de: ftejada date=1492784581paso variable si es necesario
   


tenes que pasar un metodo, no una variable, supongo que te referis a eso, no se, si no es asi crea una simple funcion publica con un print o debug.log para probar. Me parece que la funcion en cuestion a llamar esta en un componente y este tiene que estar activo en tu gameObject, (que tiene el animator), chequea eso.
 
saludos

Cita de: lightbug date=1492785421tenes que pasar un metodo, no una variable, supongo que te referis a eso, no se, si no es asi crea una simple funcion publica con un print o debug.log para probar. Me parece que la funcion en cuestion a llamar esta en un componente y este tiene que estar activo en tu gameObject, (que tiene el animator), chequea eso.
   
   
      saludos
   


Vale ya e descubierto la causa... gracias a ti lightbug.
 
Todo estaba bien configurado.... el problema es el que has comentado en este ultimo post, el script desactivado. En realidad ni pensaba que fuese eso, no podía imaginar que al estar el script que contiene la funcion desactivado, en el momento en el que el clip de animacion llamase a la funcion, Unity no ejecutase el codigo de esa funcion pese a que el clip la llamase...
 
Aparte la puñeta que lo complicaba mas todo para encontrar la causa, es que ese script siempre esta activado en escena, salvo en algunos pequeños momentos... como cuando se ejecuta la animacion que contiene el event... jajajaja. Cambiaré el diseño.
 
 
 
Saludos y muchas gracias

Cita de: ftejada date=1492868221Vale ya e descubierto la causa... gracias a ti lightbug.
   
   
      Todo estaba bien configurado.... el problema es el que has comentado en este ultimo post, el script desactivado. En realidad ni pensaba que fuese eso, no podía imaginar que al estar el script que contiene la funcion desactivado, en el momento en el que el clip de animacion llamase a la funcion, Unity no ejecutase el codigo de esa funcion pese a que el clip la llamase...
   
   
      Aparte la puñeta que lo complicaba mas todo para encontrar la causa, es que ese script siempre esta activado en escena, salvo en algunos pequeños momentos... como cuando se ejecuta la animacion que contiene el event... jajajaja. Cambiaré el diseño.
   
   
       
   
   
      Saludos y muchas gracias
   


de nada! me parecia que debia ser algo relacionada con el componente/gameObject desactivado

Etiquetas: