ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Unity - BlendTrees
    Search: Unity Unity 2020. 11. 11. 10:53

     

    개념이해

    두 가지 이상의 모션을 블렌드하는 작업에 사용.
    Ex 캐릭터의 속도에 따른 걷기와 달리기 애니메이션 블렌딩, 캐릭터가 달리다가 좌우로 몸을 기울이는 것.

     

    Transitions: 일정 시간 안에 어떤 애니메이션 스테이트에서 다른 애니메이션 스테이트로 매끄럽게 전환하는 데 사용됩니다. 트랜지션은 애니메이션 상태 머신의 일부로서 지정됩니다. 어떤 모션에서 전혀 다른 모션으로 트랜지션되는 경우도 트랜지션이 빠르게 일어난다면 보통 문제가 없습니다.

    Blend Trees: 여러 개의 애니메이션을 블렌드하고, 각 애니메이션의 일부가 각각 다른 비중으로 합쳐져 매끄럽게 블렌딩되도록 하기 위해 사용합니다. 각각의 모션이 최종 효과에 어느 정도 영향을 주도록 할 것인지는 블렌딩 파라미터 를 사용하여 제어하는데, 이 파라미터는 애니메이터 컨트롤러에 관련된 수치인 애니메이션 파라미터 중에서 하나입니다. 모션을 자연스럽게 블렌드하기 위해서는 성질과 타이밍이 유사한 모션끼리 블렌드되어야 합니다. 블렌드 트리는 애니메이션 상태 머신의 특별한 스테이트 타입입니다.

     

    다양한 걷기와 달리기 애니메이션의 경우 제대로 블렌드하기 위한 Ex
    정규화된 시간 기준으로 같은 시점에 일어나야 한다. 걷기와 달리기 애니메이션에서 발이 땅에 착지하는 동작이 정규화된 시간 기준 같은 순간에 일어나도록 일치시킨다(왼발이 0.0에 착지, 오른발이 0.5에 착지 등). 정규화된 시간이 사용되기 때문에, 클립의 길이가 달라도 무방하다.

     

    Ex: 2020/11/11 - Unity - 걸으며 좌우전환 블랜딩 하기

     

    사용법요약

    Parameters로 h와v의 값을 받도록 하고

    코드에서는 h와v의 값을 넣도록 하고

            mH = Input.GetAxis("Horizontal");
            mV = Input.GetAxis("Vertical");
    
            mAnim.SetFloat("h", mH);
            mAnim.SetFloat("v", mV);

     

    BlendTree생성 후

    h와v의 값을 이용하여 여러 애니메이션을 블랜딩한다

     

    'Unity' 카테고리의 다른 글

    Unity - OnCollisionEnter OnCollisionStay OnCollisionExit  (0) 2020.11.11
    Unity - CapsuleCollider  (0) 2020.11.11
    Unity - Rigidbody  (0) 2020.11.11
    Unity - UnityChan Walk Blend  (0) 2020.11.11
    Unity - AnimatorController (UnityChan으로 Animation)  (0) 2020.11.11
    Unity - Animator 사용  (0) 2020.11.11
    Unity - Roguelike 튜토리얼  (0) 2020.11.10
    Unity - 오류 No Sprite Editor  (0) 2020.11.10

    댓글