[내배캠] 최종 프로젝트 #5. 캐릭터 공격 속도와 애니메이션

Sungchan Ahn(안성찬)·2024년 12월 2일

내일배움캠프

목록 보기
73/104

공격 속도에 따라 애니메이션 속도 변경하기

공격 속도는 1초당 공격 횟수로 정의했다.
float AttackSpeed = 1.5 => 1초에 1.5회 즉 2초에 3번 공격
공격 속도가 빠르면 애니메이션(공격 모션)도 빠르게 해야 동작을 정확히 보여줄 수 있다.
리그오브레전드의 공격 속도 시스템을 참고하면 좋다.

  1. 1초에 1번 공격하는 것을 기준으로 애니메이션을 만든다.
  2. Animator창에서 Float Parameter 추가. 이름은 AttackSpeed
  3. Attack 상태를 선택하고 Inspector 창에서 Speed의 Multiplier Parameter 체크 후 위에서 만든 AttackSpeed(float parameter)로 설정
  4. 스크립트에서 AttackSpeed 변수가 1보다 크면 animator.SetFloat("AttackSpeed"(Parameter명), AttackSpeed(변수명))으로 AttackSpeed 파라미터의 값을 AttackSpeed 변수의 값으로 설정해 Speed를 증가시킨다.

ex) float AttackSpeed = 1.5f
if (AttackSpeed > 1f)
animator.SetFloat("AttackSpeed"(Parameter), AttackSpeed(1.5f));
=> Float Parameter - AttackSpeed = 1.5
Animator Speed = 1, Multiplier(Float Parameter - AttackSpeed) 1.5
=> 1 1.5 => 1.5배속 => 1초에 Sample Rate만큼의 프레임에서 1초에 Sample Rate 1.5 프레임의 속도

profile
게임 개발 기록

0개의 댓글