강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của chan0205277894
chan0205277894

câu hỏi đã được viết

Tìm hiểu những điều cơ bản về Unity của Tiến sĩ Ko bằng cách làm theo

Thực hành hoạt hình 2D (12:34)

05-02 실습에서 마지막 부분을 해보니 죽는 키를 누르면 die 가 두번 재생됩니다

Viết

·

53

0

강의 마지막 부분을 실습할 때 저번 강의의 platformer에서 사용했던 코드에 Die부분들을 덧붙이고 z키를 누르면 playerDie로 전환되게 설정해놓았습니다. 그런데 실행시키고 animator 창을 보면 z를 눌렀을 때 idle에서 die로 넘어가고 die가 전부 실행된 후 idle로 다시 넘어갔다가 자동으로 die를 한번 더 재생하는 현상이 발생했습니다. 그런데 두번째 die실행에서는 'End of Die Animation' 이 나오지는 않습니다.

unity

Câu trả lời 2

1

안녕하세요, 인프런 AI 인턴입니다. 이찬님.

Die 애니메이션이 두 번 재생되는 현상은 일반적으로 트리거 설정이나 애니메이션 조건에 문제가 있을 때 발생할 수 있습니다. 아래에서 문제점과 해결 방법을 알아보도록 하겠습니다.

문제 분석 및 해결 방안

  1. 트리거 설정 문제 확인:

    • Die 상태로 전환을 트리거하고 난 후, 트리거를 자동으로 리셋해야 합니다. 만약 트리거가 해제되지 않으면 Die 애니메이션이 다시 반복될 수 있습니다.
    • 트리거 리셋 코드: animator.ResetTrigger("Die");
  2. 애니메이션 상태 전환 조건 확인:

    • Die 애니메이션 상태가 완료된 후 어떤 조건을 통해 Idle 상태로 돌아가는지 확인이 필요합니다.
    • 조건을 정확히 지정하지 않으면… Die에 대해 다시 트리거되거나, 자동으로 재생될 수 있습니다.
  3. 애니메이션 종료 이벤트 설정 확인:

    • Die 애니메이션이 끝났을 때 이벤트(예: End of Die Animation)가 제대로 설정되어 있는지 확인해야 합니다. 만약 설정하지 않았다면, 애니메이션이 끝난 후 원하는 로직을 호출할 수 있도록 이벤트를 설정하세요.

참고 자료

아래 링크는 유사한 문제 해결에 도움이 될 만한 Inflearn의 질문들입니다:

문제가 지속된다면, 정확한 스크립트와 애니메이터 설정을 함께 공유해 주시면 더 구체적인 도움을 드릴 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

0

chan0205277894님의 프로필 이미지
chan0205277894
Người đặt câu hỏi

ResetTrigger를 사용하니 해결되었는데 강의 영상에서는 따로 사용하지 않은걸로 보였는데 혹시 또 다른 신경써야하는 부분이 있는건지 궁금합니다.

unitynote님의 프로필 이미지
unitynote
Người chia sẻ kiến thức

사실 이 부분은 단순하게 "코드를 이용해 애니메이션을 재생하는 방법"에 대해서만 학습을 하고 있다보니 여러 번 재생하도록 명령하거나 했을 때에 별도의 처리를 하고 있지 않습니다.

보통은 코드에서 사망 여부를 나타내는 private bool isDie = false; 같은 변수를 선언하고, 아래와 같이 작성하는게 일반적입니다.

ResetTrigger를 사용해도 되지만 아래 코드처럼 애초에 animator.SetTrigger(""); 가 다시 호출되지 않도록 조건을 설정하는 것이 더 좋은 방법입니다.

 

public void OnDie()

{

if ( isDie == true ) return;

 

isDie = true;

animator.SetTrigger("onDie");

// 사망 처리

}

Hình ảnh hồ sơ của chan0205277894
chan0205277894

câu hỏi đã được viết

Đặt câu hỏi