Unity

[unity] Animator.stringToHash("파라미터이름")

대왕휴지 2023. 6. 4. 15:19

강의를 보다가 처음보는 코드가 있어서 찾아보았다.

 

보통 애니메이터에서는 파라미터를 쓸때 string으로 쓴다.

animator.Setfloat("Vertical", verticalMovement);

하지만 이렇게 string으로 쓰게되면 값을 변환할때마다, 매번 Hash로 변환하게된다

=> 한마디로 성능에 좋지않다.

그래서 Animator.StringToHash를 써야한다.


Animator.StringToHash("파라미터 이름");

int vertical = Animator.StringToHash("Vertical");

vertical 변수에 애니메이터 파라미터 string값(Vertical)을 Hash값으로 추출해서 저장된다.

사용은 이렇게 한다.

//animator.Setfloat("Vertical", verticalMovement);
animator.Setfloat(vertical, verticalMovement);

이렇게 사용하면, 파라미터 값을 변경할때마다, 매번 Hash로 변환하는 일은 없어지게 된다.