일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- c#
- 게임개발
- frontend
- IntelliJ
- 백준
- OAuth2.0
- 유니티
- node.js
- spring
- netlify
- jwt
- AWS
- Python
- 스프링
- 스프링부트
- unity
- 코딩
- express
- MongoDB
- 게임
- 깃
- 프로그래밍
- 백엔드
- oAuth
- JSON
- 파이썬
- springboot
- RiotAPI
- bcrypt
- react
- Today
- Total
Unwound Developer
유니티 - 2D 런 게임, 애니메이션 본문
캐릭터 애니메이션을 생성해볼게요.
일단 상단의 Window > Animation < Animation을 클릭해서
애니메이션 편집 창을 꺼내와요.
그리고, 편집 창의 Create버튼을 눌러요.
그럼 아까 잘랐던 Run 스프라이트를 모두 선택 후, 드래그&드롭으로 애니메이션창까지 끌고올게요.
그리고 저 Samples를 16정도로 해야 애니메이션 동작이 너무 빠르지 않게됩니다.
초기엔 60으로 되어있는데, 그럼 초당 60개의 애니메이션이 재생되어 너무 빨라보여요.
저 Samples가 안보일 수도 있어요.
애니메이션 창 우측 상단에서 추가해줘야 합니다.
Show Sample Rate 하면 생겨요.
이제 저장하면, 애니메이션 파일이 생깁니다.
Jump와 Die 애니메이션도 같은 방법으로 애니메이션을 구성해줘요.
근데, Die 애니메이션은 Loop Time을 해제해야 해요.
죽는 모션은 반복되면 안되니까요.
프로젝트 창에서 만들어진 Die 애니메이션 파일을 클릭하고,
루프타임을 해제합니다.
이제 유니티 메뉴에서 Window > Animation > Animator을 클릭해서, 애니메이터 창을 열어줘요.
전 이미 연결을 해놨는데, 우클릭하고 make transition을 클릭하면 화살표로 연결시킬 수 있어요.
게임 시작 후 Run 상태로 진입해야하니 Entry에서 Run으로 연결하고
달리다가 점프를 하면, Run > Jump > Run 순으로 애니메이션이 변경되어야 하니까, 상호 연결해요.
그리고 어떤 상태에서도 죽는 상황이 발생하면 바로 Die 애니메이션으로 가야하기 때문에, Any State에서 Die로 연결합니다.
그리고 파라메터들을 생성해줘야 하는데
Bool 타입으로 Grounded를, Trigger타입으로 Die를 생성해요.
이 파라메터를 통해서, 애니메이션 상태를 전이할 경우를 알려주는거에요.
그리고, 해당 전이의 조건을 만족하면 애니메이션이 변경되는거죠.
이 화살표를 클릭하게되면, 전이에 관한 설정이 가능해요.
Has Exit Time은 바로 애니메이션이 전환되는것을 막아요.
저는 동작이 바로바로 전환되어야 해서, 옵션을 껐어요.
그리고 Grounded가 false, 즉 공중에 떴을 때 Run>Jump로 전이되어야 하니까 위 처럼 조건을 주었구요.
여기까지가 애니메이션에 관한 설정이었어요.
'Unity > Unity, C#' 카테고리의 다른 글
유니티 - 2D 런 게임, ScrollingObject (0) | 2022.01.12 |
---|---|
유니티 - 2D 런 게임, 플레이어 스크립트 (0) | 2022.01.11 |
유니티 - 2D 런 게임, 스프라이트 (0) | 2022.01.11 |
유니티 - 닷지 UI 생성 (0) | 2022.01.10 |
유니티 - 닷지 오브젝트 자동 생성하기 (0) | 2022.01.07 |