내일배움캠프 145일차 - 최종프로젝트 35일차: 애님몽타주의 슬롯을 이용한 상·하반신 애니메이션 분리 재생
애님몽타주의 슬롯을 이용한 상·하반신 애니메이션 분리 재생
일반적으로 연속되는 애니메이션을 재생할 때는 State Machine을 사용하지만, 단발성 애니메이션을 재생할 때에는 애님 몽타주를 사용하게 된다. 애님 몽타주는 스켈레탈 메시 내에 저장된 애님 슬롯을 통해 재생하는데, ABP(애니메이션 블루프린트)에서 애님 슬롯을 노드로 할당하여 재생할 수 있다.
예를 들어, 기존 State Machine을 통해 애니메이션을 출력하는데, 중간에 DefaultSlot을 노드로 할당할 경우, 몽타주 재생 시 DefaultSlot에 할당되었던 애님 몽타주가 State Machine으로 출력된 애니메이션을 오버라이드한다는 것이다.
| State Machine의 애니메이션 포즈를 애님 몽타주 슬롯으로 덮어 씌울 수 있다. |
나는 여기서 상반신만 몽타주를 재생할 예정이기 때문에 애님 몽타주 슬롯의 이름을 UpperBody로 고쳐 쓰도록 한다. (상반신만 움직일 몽타주 슬롯이라는 의미)
| Layered blend per bone 노드를 활용한 상/하반신 애니메이션 별도재생 |
Layered blend per bone을 사용하면 지정한 본 부터 애니메이션을 추가로 담을 수 있게 된다. 해당 노드에 대한 자세한 사용법은 다음과 같다.
| 분기 필터로 지정된 본 (녹색), 해당 분기의 영향을 받는 본 (하얀색) |
뎁스 블렌드 [0]: 기본값. 지정 본을 포함한 모든 하위 본에게 가중치 1 적용. (애니메이션을 완전히 따라감)
뎁스 블렌드 [양수 n]: (1단계 본)지정 본 가중치 1/n부터 n단계 본 및 이후 하위 본 가중 치 n/n = 1 까지 점진적으로 증가한다. (예: Pelvis부터 뎁스 블렌드 3일때, Pelvis = 1/3, Spine01 = 2/3, Spine 02 = 1)
뎁스 블렌드 [음수 n]: 웨이트가 -1에 가까울 수록 Base포즈를 선호한다. (1단계 본) 지정 본 가중치 -1/n부터 n단계 본 및 이후 하위 본 가중치 -n/n까지 점진적으로 감소한다.
웨이트 적용 순서는 분기 필터의 인덱스 순서를 따른다.
적용 결과
위 본 블렌딩의 과정을 통해, 걷는 애니메이션을 하반신에, 서서 손을 드는 애니메이션을 상반신에 적용하면 다음과 같은 결과를 얻을 수 있다.
댓글
댓글 쓰기