과거에도 있던 현상이었는데, 어찌어찌하여 고쳐 저서 신경 안 썼는데 다시 발생해서 해결과정을 글로 써본다.
미리 보는 결론 : Any State에서 시작하는 애니메이션은 조건을 Bool 말고 Trigger로 하자
Idle에서 Run 상태로 가는 Transition이 Bool로 돼있어서 Heart(...)와 Slide를 아무 생각 없이 해줬더니 저렇게 됐다.
그런데 Attack은 제대로 한 번만 실행되었기 때문에 차이점을 찾다가 Transition의 조건이 Trigger인 것을 확인하고,
Heart와 Slide의 Transition의 조건을 Trigger로 바꾸니까 문제없이 실행되었다!
Bool값은 상태 값으로 판단을 해서, 애니메이터에서 AnyState에서 Transition이 Bool형식일 경우 코드에서 한 번 더 실행시키는 것 같다.
따라서 AnyState에서 Transition 변수는 Trigger로 구현해야곘다.
조금이나마 도움이 되었다면 좋겠다.
'게임개발 > 유니티_문제해결' 카테고리의 다른 글
플레이어가 타일 맵에서 벗어날 때. (0) | 2023.05.24 |
---|---|
[유니티_문제해결] 대쉬 시 y축 고정 혹은 y축 변경없는 이동 (0) | 2023.04.12 |
[유니티_문제해결] 애니메이션 동작 중 다시 실행 (버그) (0) | 2023.04.06 |