프로그래밍 농장

Animation Layer / Blend Tree 이론 [ Unity ] 본문

Unity

Animation Layer / Blend Tree 이론 [ Unity ]

Tennessee201 2022. 2. 14.
728x90

저번 포스트에서 확인하였듯이 Animator의 Base Layer는 기본적으로 생성되어있으며, 이 외에 New Layer를 생성하여서 Animator의 부위 (관절 . .) 별로 애니메이션의 재생순서 및 범위를 설정할수있다. 


- 순방향 운동학(Forward Kinematicss, FK)  /  역방향 운동학(Inverse Kinematics, IK)

 Animator의 움직임을 관절별로 Layer로 구분하여 보다 현실적으로 구현한다는 개념이다. 이 개념은 Animator의 움직임(계단. .)과 같은 관절의 순차적인 반응을 목표로 한다. 

Layer별로 나누어진 Animator의 관절

 


- 아바타 마스크(Avator Mask)

Project View에서 생성할수있으며, 신체부위를 활성/비활성화하여 animation 재생에 대한 제어를 할수있다.

HumanoidTransform 설정이 존재한다. 

Humanoid :  스켈레톤 단위로 큰단위를 사용할떄 쓰임 

Transform : Humanoid가 아니거나, 얼굴 손가락 등과 같이 더욱 세부적인 표현을 할떄 사용 .


- Blend Tree

Blend Tree는 하나의 상태안에 여러개의 Animation clip을 갖게 하며 이를 parameter값에따라 하나이상의 값을 동시에  표현하는 방식이다. ( 서서히 + 서기 , 서서히 + 걷기 . . )

1D : 하나의 파라미터로 애니메이션 블랜드

2D : 두개의 파라미터로 애니메이션 블랜드 

 -2D Simple Directional : 모두 다른 방향을 향하는 경우 ( 동일한 방향에 하나의 애니메이션 배치 가능) ex) 대기, 각 방향 걷기 (전/후/좌/우)

 -2D Freeform Directional : 다른 방향과 같은 방향이 함께 있는 경우 ex) 앞으로 걷기와 앞으로 뛰기 , 대기, 각 방향 걷기 (전/후/좌/우)

 -2D Freeform Cartesian : 한 방향을 향하는 경우 ex) 전진, 전진하며 좌/우로 돌기 

728x90