공격이 가능한 데모 버전을 만들던중 애니메이션에서 공격을 할 시 공격애니메이션이 진행되다가 멈추고 처음부터 다시 시작되는 문제가 있었다.
문제는 C#스크립트와 애니메이터에 있었다.
1. 애니메이터
Any State에서 Dead 만 구현해 보아서 나도 모르게 Exit로 트랜지션을 만들어 버렸다.
1차적으로 Attack->Exit를 없앴지만 그래도 부자연스러웠고, 이내 Default State(Idle)로 돌아감을 설정해주는게 맞다고 생각해서 만들어 주었다.
2. C#스크립트
Update 함수안에 Animator의 변수를 정하는 animator.SetBool() 과 같은 함수들이 여러개 있어서 한 프레임마다 계속 충돌이 일어난거 같아, 공격중에는 상태를 바꿀수 없도록 if문을 통해 공격중인지 확인하게 만들고 Animator를 수정했기 때문에 이에 맞추어 소스코드를 수정하니 공격이 깔끔하게 되었다.
'게임개발 > 유니티_문제해결' 카테고리의 다른 글
플레이어가 타일 맵에서 벗어날 때. (0) | 2023.05.24 |
---|---|
[유니티_문제해결] 애니메이션이 두 번 재생 되는 경우 (0) | 2023.05.18 |
[유니티_문제해결] 대쉬 시 y축 고정 혹은 y축 변경없는 이동 (0) | 2023.04.12 |