반응형

휴머노이드(인간형) 유닛의 공격 애니메이션 타이밍에 맞춰 발사체가 나가도록 하는 방법을 기록해둡니다.

(출처 by 양세찬)

 

 

1. 모델링 안의 애니메이션을 복사한다.

위에 선택된 애니메이션은 애니메이션 에셋(모델링파일)에서 복사하여 가져온 애니메이션이다.

왜 굳이 복사해야하냐면, 복사되지 않은 원본 애니메이션은 수정이 불가능하기 때문이다.

폴더를 하나 만들어 복사한 애니메이션을 모아 관리하자.

또, 모델링채로 복사해오면 애니메이션 수정이 안되기때문에, 애니메이션만 복사하여 가져오는 걸 잊지 말자!

 

굳이 애니메이션 뿐만 아니라 에셋을 사용할 때는 원본에 바로 수정을 하기보다는 사용할 것들만 따로 폴더를 만들어 가져와 사용하는 것이 관리에 편하다는 것을 이번 프로젝트에서 에셋을 대략 15가지 사용하며 깨달았다. 매번 어딨지어딨지 하면서 여기저기 찾으러다니기 어지러워죽을것 같다ㅎ 하지만 이미 너무 늦어서 이번 프로젝트에서는 더이상 정리는 하지 않으려고 한다 ㅠㅠㅠ

 

 

2. 애니메이션을 등록한다.

이 부분의 경우, 나는 TDTK의 에디터를 통해 간단하게 애니메이션을 추가했다.

다른 분들의 경우는 아래 3.의 애니메이션 컨트롤러에서 추가해주시면 되겠다.

 

 

3. 애니메이션 등록을 확인한다.

애니메이션이 컨트롤러에 잘 등록되었는지 확인한다.

애니메이션이나 조건 추가는 다른 정리 잘 되어있는 블로그들이 많으니..ㅎㅎ

간혹 내가 복사하여 폴더에 넣은 애니메이션이 아닌 원본 애니메이션을 넣어놓고 안된다고 힘들어하는 경우가 있는데(나야나) 확인을 잘 하도록 하자.

 

 

4. 애니메이션 이벤트를 등록

본격적인 내용입니다.

복사를 한 애니메이션이라면 animation창을 띄웠을 때 이렇게 수정이 가능할 겁니다.

왼쪽 빨간 동그라미를 클릭하여 add event를 하고 원하는 위치에 찍어줍시다.

그러면 inspector창에 function을 추가할 수 있도록 아래와 같이 나올겁니다.

여기에서 원하는 함수 ( 공격하는 함수 ) 를 선택해주면 됩니다.

 

그.런.데!

인스펙터창이 위와 같이 안나오고 함수를 직접 쓸 수 있는 창이 나온다면?

 

그 이유는

인스펙터창에 보이는 함수들은 이 애니메이션이 속해있는 애니메이터가 속해있는 객체에 딸려있는 함수들을 모두 긁어서 가져오는건데 아무것도 안나온다는 건 긁어올 함수가 없다는 얘기겠죠.

 

1. 적용하고자 하는 유닛에 애니메이터 컴포넌트가 추가되어있지 않다.

2. 애니메이션이 애니메이터에 추가되어있지 않다. ( 다른 애니메이션과 헷갈렸다라든가 )

 

정도로 예상해볼 수 있겠습니다.

 

유니티 애니메이션의 세계는 정말 어렵고 험난하고 자료도 많이 없고...ㅠ

앞으로도 고생할 예정인데 화이팅해보겠슴니다 :)

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기