현재 수행중인 State 는 GetCurrentAnimatorStateInfo(int layerIndex)를 이용해 가져올수 있고
Animator의 모든 객체는 Hash를 이용해 접근 가능하다.
StringToHash 에 전달하는 인자는 "레이어 이름 + 점(dot) + 스테이트 이름" 규칙을 가지고 있다.
StringToHash는 반환값으로 int 형을 반환한다.->해쉬테이블에서 찾아서 반환해주므로
Start 함수에서 미리 값을 받고 비교해주는게 최적화에 도움이 된다.
ex)
int hashGoHit = 0;
void Start()
{
hashGoHit = Animator.StringToHash("Base Layer.gothit");
}
void Update()
{
if(animator.GetCurrentAnimatorStateInfo(0).nameHash == hashGoHit)
{
// 처리구문.
}
}
'유니티 > 스크립트' 카테고리의 다른 글
| 적 생성 지점 표시하기 (0) | 2014.06.02 |
|---|---|
| 유니티 내에서 시간 표시하기 00:00 형식 (0) | 2014.05.29 |
| 유니티 현재 실행중인 애니메이션 상태 받아오기 (0) | 2014.05.26 |
| 유한상태기계 예 스크립트(몬스터 관련) (1) | 2014.05.26 |
| 총알의 입사각을 구해서 반대편으로 이펙트 효과 나오게하기 (0) | 2014.05.26 |
| 유니티 빈 게임 오브젝트 화면에 표시하기. (0) | 2014.05.26 |
Trackback 0 And
Comment 0


