유니티 애니메이션 시간(몇초인지) 구하기
애니메이션이 몇초동안 걸리는지 구하기.
animator.GetCurrentAnimatorStateInfo(0).length
애니메이션 길이를 기준으로 특정 작업을 지연 실행하고 싶을 때 사용할 수 있습니다.
IEnumerator PerformActionAfterAnimation()
{
AnimatorStateInfo stateInfo = animator.GetCurrentAnimatorStateInfo(0);
float animationLength = stateInfo.length;
Debug.Log("애니메이션 길이: " + animationLength + "초");
// 애니메이션이 끝날 때까지 대기
yield return new WaitForSeconds(animationLength);
// 애니메이션이 끝난 후 작업 수행
Debug.Log("애니메이션 완료!");
}
AnimatorStateInfo 구조체는 애니메이션 상태에 대한 다양한 속성을 포함합니다. 주요 속성은 다음과 같습니다:
속성설명
length | 현재 애니메이션 상태의 길이(초 단위). |
normalizedTime | 현재 애니메이션 상태의 진행도를 0.0 ~ 1.0으로 나타낸 값. |
shortNameHash | 애니메이션 상태의 이름 해시 값. |
fullPathHash | 애니메이션 상태의 전체 경로 이름 해시 값. |
tagHash | 애니메이션 상태의 태그 이름 해시 값. |
loop | 애니메이션이 반복(loop) 설정인지 여부. |
유니티 땅(ground) 체크하기 (0) | 2025.01.14 |
---|---|
유니티 캐릭터 줌인 (Input Action) + 시네머신 가상 카메라 (0) | 2025.01.13 |
믹사모(mixamo) unable to map your existing skeleton 에러 해결 (0) | 2025.01.09 |
유니티 인벤토리 만들기 - 3D게임 (0) | 2025.01.06 |
유니티 3D 발소리,footstep,Sound 적용하기 (0) | 2024.12.24 |