[Unity] 애니메이션에서 함수 호출하는 방법

Learning 

When: 1학년 6월 16일

 

How:

개인 프로젝트에서 에너미가 공격을 하면 그 타이밍에 맞춰서 플레이어가 맞는 기능을 구현하고 있었는데, 코루틴으로 구현하려다 보니 너무 노가다 같아서 GPT에게 물어보았고, 아주 기초적이고도 쉬운 방법이 있다는 사실을 알아버렸습니다.

 

Understanding:

Animation Clip을 열면 이런 식으로 Animation 탭에 시간과 스프라이트가 표시될 텐데, 여기서 오늘 배울 것은 중간쯤에 있는 하얀색 작대기입니다.

Animation 탭의 좌측 상단에 이런 버튼이 있는데, 맨 오른쪽에 있는 버튼을 누르면 저 막대기가 생기고, 저 막대기를 원하는 시간대에 드래그한 후 클릭하면 인스펙터 탭에 아래와 같이 메서드 이름, 매개변수 등을 넣을 수 있습니다.

메서드 이름과 매개변수 등을 적고, 그 애니메이션이 실행될 게임 오브젝트에 저 메서드와 같은 이름을 가진 public 메서드를 작성하면, 아까 정했던 시간에 맞춰서 메서드가 자동으로 호출됩니다.

 

Result: 애니메이션에 맞춰서 실행해야 하는 메서드가 있다면, 저처럼 사서 고생하지 마시고 애니메이션 이벤트를 이용하도록 하시는 것이 좋습니다.