Animator.CrossFade는 현재 재생 중인 애니메이션에서 다른 애니메이션으로 부드럽게 전환(fade) 시켜주는 메서드이다.
전환 중 기존 애니메이션이 완전히 끊기지 않고, 지정한 시간 동안 점진적으로 새로운 애니메이션으로 넘어간다.
사용 예시
animator.CrossFade("Attack", 0.25f);
- "Attack" 애니메이션으로 0.25초에 걸쳐 부드럽게 전환
- 현재 애니메이션 상태를 강제로 덮지 않고 자연스럽게 이어짐
주요 특징
- 트랜지션 없이도 부드러운 상태 전환 구현 가능
- 재생 중인 상태와 겹쳐도 자연스럽게 이어짐
- 애니메이션 겹침 구간이 필요한 공격/이동 연계에 유용
주의할 점
- CrossFade는 스테이트 이름 또는 해시값 기준으로 전환함
- 트랜지션 조건을 설정한 AnimatorController보다 직접적인 제어가 필요한 경우에 사용
개인 생각
기존에는 SetTrigger + 트랜지션으로 애니메이션 전환을 처리했지만,
즉시 전환이 필요하거나 특정 시점의 페이드가 중요한 스킬 연출에는 CrossFade가 훨씬 유연했다.
특히 스킬 연계, 연속 공격 등의 상황에서 부드러운 전환을 원할 때 유용할 것 같아 사용해볼 예정이다.
'Unity > 기능' 카테고리의 다른 글
| [Unity] New Input System 사용하기 (0) | 2025.07.15 |
|---|---|
| [Unity] New Input System (0) | 2025.07.14 |
| [Unity] 오브젝트 풀링 구현하기 (1) | 2025.07.08 |
| [Unity] 제네릭 메서드 (0) | 2025.07.07 |
| [Unity] OverlapBox 와 OverlapBoxNonAlloc (0) | 2025.07.03 |