본문 바로가기
게임 엔진 - 유니티/[루키스] 유니티

[유니티 Note] 섹션 7-1

by 묻공러 2025. 7. 5.

# Animator Component

애니메이션을 사용하기 위해서는 Animator Component를 활용하면 된다

Animation Component는 구버전 레거시이다

 

# AnimatorController 제작 및 설정

원하는 폴더 위치에서 우클릭 Create > AnimatorController 선택하면 생성된다

 

AnimatorController는 언리얼의 애니메이션 블르프린트와 동일한 역할이다

AnimatorController에서 Alt 키 누르고 왼쪽 클릭 상태로

or 마우스 중간버튼 누른 상태로 이동 가능하다

원하는 Node를 클릭 후, Inspector 창에서 이름을 포함한 세부 설정이 가능하다

 

# Animator 코드 기초 활용법

AnimatorController의 Node 이름을 호출할 수 있다

Animator animator = GetComponent<Animator>();
animator.Play("RUN");

 

# Blend Node

애니메이션들의 전환을 부드럽게 하기 위해서 섞는 경우

Blend Node를 활용해 Animation Blending을 할 수 있다

AnimatorController 툴 창에서 우클릭으로

Create State > From New Blend Tree를 통해 Blend Node 생성 가능

 

# Parameters

AnimatorController 툴 창에서 Parameter를 생성할 수 있다

Blend Node에서 뿐 아니라 다양하게 해당 Parameter를 선택해서 활용 가능하다

 

# Blend Node와 Parameters를 활용한 예시 코드

AnimatorController BlendNode를 만들어서

Wait과 Run 애니메이션을 추가해 준다

그리고 Parmeter로 wait_run_ratio를 추가하고

아래와 같이 코드에서 호출할 수 있다

float wait_run_ratio = 0;

if(_mouseMoveToDest == true)
{
	wait_run_ratio = Mathf.Lerp(wait_run_ratio, 1, 10.0f * Time.deltaTime);
	Animator animator = GetComponent<Animator>();
	animator.SetFloat("wait_run_ratio", wait_run_ratio);
	animator.Play("WAIT_RUN");
}
else
{
	wait_run_ratio = Mathf.Lerp(wait_run_ratio, 0, 10.0f * Time.deltaTime);
	Animator animator = GetComponent<Animator>();
	animator.SetFloat("wait_run_ratio", wait_run_ratio);
	animator.Play("WAIT_RUN");
}

'게임 엔진 - 유니티 > [루키스] 유니티' 카테고리의 다른 글

[유니티 Note] 섹션 7-3  (0) 2025.07.05
[유니티 Note] 섹션 7-2  (0) 2025.07.05
[유니티 Note] 섹션 6-3  (0) 2025.07.02
[유니티 Note] 섹션 6-2  (0) 2025.07.02
[유니티 Note] 섹션 6-1  (0) 2025.07.02