AnimationLayer
- 씬 제작 및 AnimationController 컴포넌트도 추가.
- Animator에 Walk Layer 추가.
- 게임 실행하면 걷는 애니메이션 생김
- Asset에 UpperBodyAvatar을 생성하여 humaniod에서 아래 다리 고정 시킴.
- Animator에 새로운 Layer 생성
- 가중치를 1 / Mask를 해당 Avatar로 설정
- Walk 대기 자세의 애니메이션 추가
- layer 순서 : Base Layer > UpperLayer
- 결과
- UpperLayer : 상체 / 대기 애니메이션 재생
- BaseLayer : 전체 / 걷기 애니메이션 재생
Blend Tree 1D
- 이전 실습과 동일하게 새로운 씬을 만들고 AnimationController 컴포넌트도 추가.
- Animator에서 오른쪽 클릭을 하여 BlendTree 생성.
- Blend Tree를 더블 클릭하여 이름을 moveSpeed로 바꿔주고 모션 추가.
- 모션을 3개가지 추가하여 Wait / Walk / Run으로 구성.
- Treshot은 0 / 0.5 / 1로 자동 설정된 것을 알 수 있음.
- 걷기와 달리기 구분을 위해 shift 키를 단축키로 등록
Edit > Project Settings > Input Manager
[Script]
- float vertical = Input.GetAxis("Vertical");
: 앞 뒤 방향키를 누르면 vertical 변수의 값은 -1에서 1 사이의 값.
- float offset = 0.5f + Input.GetAxis("Sprint") * 0.5f;
: shift 키의 입력에 따라 오프셋의 값이 0.5에서 1 사이의 값.
- float moveParameter = Mathf.Abs(vertical * offset);
: 블렌드 트레이에 등록된 애니메이션 이동에 대한 구분이 없기 때문에 vertical 값을 절대값으로 0에서 1 값
shift 키를 누르지 않으면 최대 0.57 / 누르면 최대 1
- Animator.SetFloat("moveSpeed", moveParameter);
: 스피드 파라미터에 값을 설정할 때 아무것도 누르지 않으면 0이 입력되어 wait 애니메이션 재생.
Blend Tree 2D Simple Directional
- 새로운 씬 생성 및 AnimationDirectional 컴포넌트 생성.
- Animator View로 가서 Blend Tree 생성 및 내부로 이동.
- 기존 파라미터를 Horizontal로 설정 / 하나 더 추가하여 Vertical 파라미터 생성.
- 모션 5개로 추가.
- 대기 / 앞으로 걷기 / 뒤로 걷기 / 왼쪽으로 걷기 / 오른쪽으로 걷기 등
- x, y 설정 후 각 방향에 대해 이동이 등록됨.
[Script]
Blend Tree 2D Freeform Directional
- 새로운 씬 생성 및 2DFreeformDirectional 컴포넌트 생성.
- Animator View로 가서 Blend Tree 생성 및 내부로 이동.
- 기존 파라미터를 Horizontal로 설정 / 하나 더 추가하여 Vertical 파라미터 생성.
- 모션을 9개 추가함.
- Wait, 각각의 방향에 대해 걷기, 앞으로 달리기, 왼쪽으로 달리기, 오른쪽으로 달리기, 뒤로 달리기가 없기에
뒤로 걷기 다시 설정.
- x,y 설정.
[Script]
[결과]
- 방향키에 따라 뛰는 것까지 가능.
Blend Tree 2D Freeform Catesian
- 새로운 씬 생성 및 2DFreeformCatesian 컴포넌트 생성.
- Animator View로 가서 Blend Tree 생성 및 내부로 이동.
- 기존 파라미터를 Horizontal로 설정 / 하나 더 추가하여 Vertical 파라미터 생성.
- 모션을 3개 더 추가함.
- Wait, 앞으로 달리기, 왼쪽으로 달리기, 오른쪽으로 달리기 모션 추.
- x,y 로 범위 설정.
[Script]
- 앞서 작성한 Player2DController과 동일하게 작성.
[결과]
- 사선으로 회전해서 뛰기 가능.
'유니티' 카테고리의 다른 글
유니티 09. Terrian Map (0) | 2024.06.05 |
---|---|
유니티 08. 3D Animations / Simple Combat (0) | 2024.05.29 |
유니티 07. Animation Layer, Blend Tree (0) | 2024.05.22 |
유니티 06. 3D Model / Animations (0) | 2024.05.15 |
유니티 06. Navigation Mesh 응용 (0) | 2024.05.15 |