애니메이션 에셋 이름을 유니티에서 애니메이션 클립이라고 부른다.
keyframe을 베이스로 해서 각 애니메이션이 저장되어있다. 다음의 요소를 가지고 있다.
다음의 요소를 가지고 있다.
애니메이션 클립에 관한 컨트롤을 위한 클래스. 주요한 기능은 다음과 같다.
NormalizedTime
Speed
length
layer
void Update()
{
if(Input.GetAxis("Vertical" > 0.2f)
{
animation.CrossFade("walk");
} else
{
animation.CrossFade("idle");
}
}
해당 코드는 이동 키를 누르면 자동으로 걷는 동작을 매 프레임마다 실행하는 것이고 누르지 않으면 자동으로 idle(기본) 동작을 하는 것을 의미한다.
해당 애니메이션의 컴포넌트를 조정한다.
void Start() {
animation.wrapMode = WrapMode.Loop; // 기본적으로 반복
animation["shoot"].wrapMode = WrapMode.Once; // 기본클립(shoot)은 기본이 Once
animation["shoot"].layer = 1; // 기본 레이어는 1
animation.Stop(); //
}
해당 애니메이션을 섞을 수 있다.
void Start() {
Transform mixTransform;
mixTransform = transform.Find("root/upper_body/left_shoulder");
animation["wave_hand"].AddMixingTransform(mixTransform);
}
wave_hand 애니메이션을 mixTrasform 애니메이션과 섞겠다는 뜻을 가지고 있다.
단, 해당 믹싱은 단순한 애니메이션만 가능하다. 복잡한 애니메이션은 섞으면 조잡해지기 때문이다.
애니메이션 예제는 다음과 같이 사용할 수 있다.
