DOTY

Animation Retargeting 본문

Animation

Animation Retargeting

증식세포 2023. 8. 17. 03:05
728x90
반응형

Root Bone 만드는 것은 그냥 삽질 포함해서 골머리를 썩었지만 개인적으로 리타겟팅이 더 어려웠던 것 같다. 루트 본은 사실 Blender에 fbx 파일들을 넣어서 바꿔주는 형태로 방법을 알아가는 과정이 어려웠지 방법을 알아낸 후에는 간단했다. 하지만 애니메이션 리타게팅은 방법을 알아냈지만 본을 타겟팅 시킬때 조금 엇나가면 동작들이 이상하게 변했기 때문이다. 그리고 추가로 리타겟팅 이후에 후처리도 해줘야하는 것을 몰랐을때 더더욱 그랬었다.

 

위의 스켈레톤은 내가 사용하고 싶은 애니메이션의 스켈레톤이고 아래는 내 캐릭터의 스켈레톤이다. 둘의 스켈레톤 구조는 정확히 일치하지 않았지만 전에 Root를 추가해서 리타겟팅 하는데 조금이나마 쉬웠던 것이 아닐까 싶다.

 

우선 각각의 "IK 릭"을 만들어줬다. 이것을 사용하는 이유는 캐릭터의 최종 위치나 목표 지점을 지정하여 그에 따른 본들의 회전과 이동을 자동으로 계산할 수 있기 때문이다. 리타겟 체인의 시작 본을 기준으로 마지막 본까지 움직임을 계산하게 된다.

 

 

나의 캐릭터로 만든 릭이다. 처음에는 체인이 아무 것도 없었지만 하나하나 만들어줬다. (본이 더 많았다면 끔찍했을 것 같다...) 시작 본과 끝 본이 일치하는 체인도 있지만 Spine처럼 다른 체인도 있다. 만들어보고 느낀 점은 최대한 많이 만들어 줄수록 리타겟팅하는데 더욱 유의미했다는 점이었다.

 

똑같이 내가 사용하고 싶은 애니메이션의 본 또한 위처럼 릭을 만들어줬다. 그리고 그 둘을 이어주기 위해서 "IK 리타기터" 를 사용하였다.

소스는 내가 애니메이션을 따고 싶은 스켈레톤이고 타겟은 애니메이션을 적용시킬 스켈레톤이다. 이 둘의 릭을 가져와서 리타겟팅을 하는 것이다. 이 일은 체인 매핑을 통해 이루어진다.

처음에는 소스와 타겟의 체인 이름이 같은 것들 끼리 연결되어있지만 맞지 않는 경우 수동으로 바꿔줘도 좋다. 리타게터를 실행하면 소스와 타겟의 움직임이 어색한 부분이 있을텐데 그것을 조정해주면 된다. 체인 매핑을 통해 큰 틀을 먼저 만들어주고 본의 각도를 조정하여 후에 더욱 정확한 움직임을 만들어줘야한다. 그것은 편집 모드를 통해서 진행하자.

처음 소스의 모습은 T자가 아닌 A포즈 였다. 편집 모드를 통해 최대한 각도를 조정하여 내 캐릭터 모습과 비슷하게 만들어줬다. 조금 이상한 점은 발에 있다. 위치가 조금 다르지 않나 싶은 것이 맞는데 이렇게 한 이유는 리타기터를 실행해보면 두 움직임이 조금 다르기 때문에 조절을 해줬다. 내가 원하는 움직임을 얻기 위해서 조절해줬다고 생각하면 된다.

 

내 리타겟팅의 경우 Hips에 Absolute로 설정하고 알파값을 0.8로 지정해줬다. 본의 위치, 회전값들을 절대적으로 표현해주게된다. 나의 모션의 경우 소스보다 타겟이 위에 있었기때문에 이를 조정해줬다.다른 트랜슬레이션 모드에는 Globally Scaled인데 이는 전역 스케일 값이 적용된 상태에서 애니메이션의 Translation을 계산하고 적용시킨다. 아무 이상이 없다면 None을 선택하자.

 

이제 애니메이션을 적용하는데 에셋 브라우저를 통해 내가 리타겟팅 할 애니메이션을 선택한다.참고로 애니메이션은 루트 모션이 켜져있어야 한다.

 

루트 모션이 켜져있어야 하는 이유는 리타겟팅 된 애니메이션을 원하는 캐릭터에 적용하기 위함이다. 정확히 얘기하자면 루트 모션을 켜놓으면 리타겟팅 된 애니메이션에 포함된 이동 정보들이 유지되므로 자연스러운 연결이 가능해지기 때문이다.

 

선택된 애니메이션 익스포트를 선택해주면 타겟의 애니메이션을 저장해서 타겟의 스켈레톤에서도 사용할 수 있게 된다.

 


언리얼 엔진의 IK 릭 애니메이션 리타기팅 | 언리얼 엔진 5.2 문서 (unrealengine.com)

 

IK 릭 리타기팅

IK 릭 및 IK 리타기팅을 사용하여 크기와 무관하게 캐릭터 간 애니메이션을 공유 및 이전합니다.

docs.unrealengine.com

공식 문서 사랑해요....

728x90
반응형

'Animation' 카테고리의 다른 글

Mixamo RootBone 추가  (1) 2023.07.25
Comments