WWolves Den

리타기팅 · 약 3분

메시만 바꿨더니 자세가 무너지는 이유

Skeletal Mesh·Skeleton·Animation Blueprint의 관계를 이해하고 호환성 확인과 리타겟팅을 구분합니다.

Wolfgadeok · 업데이트

세 자산이 공유하는 약속

Skeletal Mesh에는 렌더링할 형상과 본에 대한 스키닝 정보가 들어갑니다. Skeleton 자산은 애니메이션을 공유하기 위한 골격 구조와 관련 정보를 관리합니다. Animation Blueprint는 그 골격을 대상으로 어떤 포즈를 언제 만들지 결정합니다. 캐릭터의 Mesh 속성만 바꾸고 마네킹용 Anim Class를 그대로 두면 새 메시가 기대한 자산 관계와 맞지 않을 수 있습니다.

마네킹 자리에 다른 골격의 메시를 넣으면 체형이나 팔 자세가 무너질 수 있습니다. 외형 교체만으로 애니메이션 통합이 완료되는 것은 아닙니다. 오류가 나지 않고 일부 본이 움직인다고 성공은 아닙니다. 기준 포즈, 본의 로컬 축, 길이와 부모 관계가 달라지면 서 있기 하나는 괜찮아도 달리기나 팔을 뻗는 순간 문제가 드러날 수 있습니다.

같은 이름과 같은 골격은 다르다

pelvis, hand_l 같은 이름이 같아도 그 본의 부모와 초기 변환이 다르면 같은 포즈를 의미하지 않습니다. 반대로 IK Retargeter는 이름이나 본 수가 다른 골격 사이에서도 대응 체인을 정의해 동작을 옮길 수 있습니다. 기존 Skeleton을 호환 대상으로 지정해 애니메이션을 공유하는 작업과 IK Retargeter로 새로운 애니메이션을 생성하는 작업을 구분해야 합니다.

루트 본과 골반도 따로 확인합니다. 뷰포트에 그려진 긴 본 선이 어디까지 이어지는지만 보고 ‘루트가 명치에 있다’고 결론내리지 않습니다. Hierarchy에서 부모 없는 본을 선택하고 실제 위치와 자식 관계를 확인합니다. 발밑의 root, 몸 중심의 pelvis, 리타겟 계산에서 사용하는 루트가 서로 같은 본일 필요는 없습니다.

안전한 교체 실험

처음에는 게임 전체가 아니라 짧은 Idle, Walk, 팔을 드는 동작으로 검증합니다. 원본 메시와 목표 메시를 나란히 놓고 체형 비율과 접촉 위치를 비교합니다. 손이 맞지 않을 때 무조건 Scale을 조절하면 발과 머리까지 왜곡될 수 있으므로, 기준 포즈와 체인 대응부터 확인합니다. 게임용 Blueprint에는 검증이 끝난 목표 메시와 목표 골격용 Anim Class를 함께 배치합니다.

  1. 두 자산의 실제 Skeleton과 기준 포즈를 확인합니다.
  2. 본 이름뿐 아니라 부모 관계와 로컬 축을 비교합니다.
  3. 공유가 적합한지, 별도 리타겟이 필요한지 결정합니다.
  4. 컴파일 후 전체 움직임과 소켓 위치를 검사하고 게임용 사본에 적용합니다.

참고 자료