Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Animator e Eventos de Animação

Eu vi que o Animator pode rodar um evento de animação. Se meu script tem essa função com o mesmo nome que aquele frame ele executa o evento e o código daquela função.

Como o Animator sabe qual é o script que ele precisa procurar essa função? Ele passa por todos os scripts daquela instancia procurando aquela função?

5 respostas

Oi Murilo, desculpa, não consegui identificar o assunto da dúvida, de que Animator estamos falando?

Falo do componente que tem os estados de animações e podemos criar parâmetros dentro dele para guiar as animações de um objeto que contem ele. Até usei ele para mesclar animação do movimento do personagem enquanto seguro uma arma

Mas você estudou essas coisas em algum curso específico? Não sei de qual curso / aula se refere, se você me der uma referência, talvez eu consiga te ajudar. É que o tópico foi criado como Off-Topic e não deu referências sobre o assunto, fiquei na dúvida sobre que Animator é esse que se refere. Entende?

Olá! Então...eu vi somente esse curso de Unity (Unity parte 1: Criação de um jogo de sobrevivência à zumbis para Web) foi nele que eu vi esse componente e fiquei curioso como ele consegue encontrar, dentro de um script dentre varios que minha classe possui, um metodo com o mesmo nome desse "anim notify" para executar ele.

solução!

Oi Murilo, tudo bom?

Vc está falando desse animationEvent aqui ne? https://docs.unity3d.com/Manual/animeditor-AnimationEvents.html

Eu não tenho certeza se é realmente isso q Unity faz, mesmo pq estamos falando de implementação interna dela. Mas acho que o mais provavel é que quando a animação chega em um frame que tenha um evento ela dispare o método sendMessage do próprio gameObjetct.

https://docs.unity3d.com/ScriptReference/GameObject.SendMessage.html

O SendMessage chama o método com o nome que pedirmos dentro de cada Componente (MonoBehavior) que exite dentro daquele GameObject.

Ficou alguma dúvida ainda?