The one thing

[유니티 무료 버전으로 놀아보자 (11)]

- 2D 애니메이션의 적용 2 -


  애니메이션 클립까지 만들었다면 이제 controller 파일을 건들어 봅시다. 에셋창에서 controller 파일을 더블클릭하거나 애니메이터 탭을 클릭해서 다음과 같은 편집창으로 들어갑니다.


  직관적인 느낌으로도 알아챌 수 있도록 유니티는 잘 만들어진 것 같습니다. 게임이 실행되면 이 객체의 애니메이션은 녹색에서 시작해서 주황색의 애니메이션 상태로 향하고 있죠. 반드시 처음 기본 상태 하나는 지정되어야 하게끔 되어 있습니다.


  가만히 생각해 봅시다. 자전거가 서 있을 때와 이동할 때의 모션이 다르게 하려 하니까 서 있는 모습의 상태가 하나 필요합니다. 그리고 이것이 기본 상태가 되어야겠죠.


 

  애니메이터 편집화면에서 비어 있는 상태 하나를 생성해 주겠습니다. 자전거가 서 있을 때의 상태를 만들어 주는 것입니다.



  오른쪽 인스펙터 창에 보면 해당 상태의 세부사항이 나오는데 보다시피 모션이 비어있습니다. 이 상태를 Set as Layer Default State로 기본 상태로 설정해 줍니다.



  그리고 두 개의 상태를 쌍방향으로 연결하게끔 Transition을 만들어 주죠. 이 각각의 화살표는 상태 변화를 위한 조건을 설정하는 역할을 합니다.


  여기까지 해도 머리가 지끈 지끈하는데요, 이제 얼마 남지 않았습니다.


  조건 설정을 위해 파라미터 창에서 변수를 하나 만들어줘야 하는데 기본적인 실수형 변수인 Float를 만들어 주겠습니다. 이 변수는 애니메이터에서 사용됩니다.



  변수 이름은 speed로 해 봤습니다. 그럴싸하죠? ^_^



  상태를 연결하는 화살표를 선택하면 인스펙터 창에 속성이 나타납니다. Has Exit Time을 체크 해제하고 (이것의 자세한 기능은 아직까지 잘 모르겠습니다.) 플러스 버튼으로 조건을 하나 추가해 줍니다. speed라는 애니메이터 변수가 0.1보다 크면 위의 상태로 이동한다는 뜻이 되겠지요.



  반대쪽 화살표도 속성을 수정해 줍니다. Has Exit Time 체크를 해제해 주고 조건을 0.1보다 작을 때 작동하도록 주었습니다.


  마지막으로 이렇게 작성된 애니메이터 파일을 끌어다가 객체에 넣어 줍니다. 



자. 이제 준비가 되었습니다. 다음에는 스크립트 작성으로 가보겠습니다.


공유하기

facebook twitter kakaoTalk kakaostory naver band
loading