IK 릭(IK Rig)은 캐릭터를 정의하는 반면, IK 리타기터(IK Retargeter)는 애니메이션의 매핑을 정의합니다. IK 릭 에셋을 제작하는 프로세스는 캐릭터화(Characterization)로 알려져 있습니다. 이는 스켈레탈 메시에서 사지와 접점을 정의하여 애니메이션을 적용 대상 에셋의 스켈레톤에 맞추는 것을 의미합니다.
이러한 툴을 사용하면 하나의 스켈레탈 메시에서 다른 스켈레탈 메시로 손쉽게 애니메이션을 전송할 수 있습니다. IK 릭으로 소스 스켈레탈 메시의 본 그룹을 타기팅하고 해당 메시의 애니메이션을 IK 리타기터 에셋에 입힐 수 있습니다.
전송 프로세스는 새 IK 릭 에셋을 생성하는 것부터 시작되며, 이는 이 에셋이 움직임을 위한 본을 정의하는 데 사용되기 때문입니다. 본을 정의한 후에는 새 애니메이션 에셋의 움직임을 매핑할 수 있습니다.
이 프로세스는 소스에서 타깃 캐릭터를 위한 새 애니메이션 에셋을 생성합니다. 이 프로세스를 따르지 않으면 소스 캐릭터의 애니메이션을 타깃 캐릭터에 지정할 수 없습니다.
이 튜토리얼을 진행함에 따라, 포트나이트 언리얼 에디터(Unreal Editor for Fortnite, UEFN)에서 애니메이션 템플릿 내부의 FN_Mannequin 에셋을 사용하여 포트나이트 캐릭터로 리타기팅 워크플로를 연습하게 됩니다.
UEFN을 열고 새 프로젝트를 생성하되, 기능 예시(Feature Examples)에서 애니메이션(Animation) 템플릿을 선택해야 합니다.
이미지를 클릭하면 확대됩니다.
원활한 프로세스 진행을 위해 다음 사항을 확인해야 합니다.
IK 릭 타깃 에셋이 소스 스켈레탈 메시와 대략적으로 같은 크기여야 합니다.
프로세스를 시작할 때 타깃 에셋과 소스 에셋에 같은 포즈를 사용해야 합니다.
애니메이션이 매끄럽게 재생되며 추가 편집이 필요하지 않도록 타깃 에셋의 애니메이션을 플레이테스트해야 합니다.
콘텐츠 브라우저(Content Browser)에 애니메이션 에셋을 보관할 폴더를 생성합니다. 폴더를 생성한 후에는 커스텀 애니메이션을 임포트할 수 있습니다.
IK 릭 및 IK 리타기팅에 대한 자세한 내용은 언리얼 엔진의 IK 릭 문서를 참고하세요.
IK 릭 에셋 생성
콘텐츠 브라우저에서 생성한 폴더를 연 후, 콘텐츠 브라우저 내비게이션 바에서 임포트(Import)를 클릭하여 애니메이션을 임포트합니다. 파일에서 애니메이션을 선택하고 열기(Open) > 모두 임포트(Import All)를 클릭합니다.
이미지를 클릭하면 확대됩니다.
다음과 같이 애니메이션과 관련된 모든 파일이 폴더에 임포트됩니다.
스켈레탈 메시
Animation
IK 릭으로 소스 스켈레탈 메시의 본을 선택하여 리타깃 체인(Retarget Chain) 및 선택 가능한 새 IK 릭 에셋을 생성합니다. IK 릭 에셋을 생성한 후에는 IK 릭 리타깃 에셋에 애니메이션을 입히고 시퀀서에서 커스텀 애니메이션을 사용할 수 있습니다.
콘텐츠 브라우저에서 우클릭하고 애니메이션(Animation) > 리타기팅(Retargeting) > IK 릭(IK Rig)을 선택합니다. 이렇게 하면 IK 릭 에셋 및 리타깃 체인을 위한 섬네일이 생성됩니다. 또는 임포트된 스켈레탈 메시 섬네일을 우클릭하여 IK 릭을 생성할 수도 있습니다.
섬네일 이름을 바꿉니다.
섬네일을 더블클릭하여 IK 릭 에디터를 엽니다.
프리뷰 스켈레탈 메시(Preview Skeletal Mesh) 드롭다운 메뉴에서 임포트된 스켈레탈 메시를 검색하여 에디터에 스켈레톤을 추가합니다.
릭 엘리먼트 목록(Rig Element list)에서 둔부 또는 골반 본을 선택한 후, 리타깃 루트 설정(Set Retarget Root)을 우클릭하여 선택합니다. 이 본은 주요 캐릭터의 모션을 저장합니다.
릭 엘리먼트 목록에서 본을 선택한 후 새 리타깃 체인(New Retarget Chain)을 우클릭하여 선택하고 필요시 팝업에서 본 그룹의 이름을 변경합니다.
체인 추가(ADD CHAIN)를 선택하여 IK 리타기팅 체인 목록에 본 그룹을 추가합니다. 리타기팅 목록이 다음 이미지와 비슷하게 보여야 합니다.
모든 본이 IK 리타기팅 체인 목록에 추가되었다면 저장(Save)을 클릭합니다.
이제 다른 스켈레탈 메시에서 커스텀 애니메이션을 사용할 수 있도록 IK 리타깃 에셋에 애니메이션을 입혀야 합니다.
IK 리타기터 에셋 생성
IK 리타기터(IK Retargeter) 에셋은 타깃 메시에 커스텀 애니메이션을 입혀 새 애니메이션을 생성하는 에셋입니다. 이 새로운 에셋은 다음과 함께 사용 가능합니다.
시퀀서 - 이 에셋을 사용하여 애니메이션을 녹화합니다.
애니메이션 메시 장치 - 트리거할 수 있는 애니메이션 시퀀스를 제작합니다.
IK 리타기팅 워크플로를 사용하여 새 애니메이션 에셋을 생성하겠습니다.
콘텐츠 브라우저에서 우클릭하고 애니메이션 > 리타기팅 > IK 리타기터를 선택합니다. 이렇게 하면 IK 릭 리타기터 에셋을 위한 섬네일이 생성됩니다. 또는 임포트된 스켈레탈 메시 섬네일을 우클릭하여 IK 리타기터 섬네일을 생성할 수도 있습니다.
섬네일 이름을 바꿉니다.
섬네일을 더블클릭하여 IK 리타기터 에디터를 엽니다.
소스 IK 릭 에셋(Source IK Rig Asset) 드롭다운 메뉴에서 생성한 IK 릭 에셋을 선택합니다. UEFN의 소스 프리뷰 메시(Source Preview Mesh) 필드와 뷰포트에 소스 에셋이 자동으로 추가됩니다.
타깃 IK 릭 에셋(Target IK Rig Asset) 드롭다운 메뉴에서 IK_FN_Mannequin을 선택합니다. UEFN이 타깃 프리뷰 메시(Target Preview Mesh) 필드와 뷰포트에 FN_Mannequin 에셋을 자동으로 추가합니다.
생성한 IK 릭 에셋 옆의 FN_Mannequin 에셋을 타깃 메시 오프셋(Target Mesh Offset) 필드 내부에 바로 드래그하여 이동합니다. 소스 에셋과 타깃 에셋의 포즈에서 약간의 차이를 확인할 수 있습니다. 쇄골 영역에 이전에는 없었던 추가 본이 더해졌기 때문입니다.
체인 매핑 패널의 자동 맵 체인(Auto-Map Chains) 드롭다운 메뉴에서 모두 매핑(정확)(Map All (Exact)) 및 모든 매핑 지우기(Clear All Mappings)를 선택합니다. 이렇게 하면 타깃 메시에서 추가 본이 제거됩니다.
에셋 브라우저(Asset browser) 패널 > 임포트된 애니메이션을 선택하여 타깃 에셋에서 재생되는 애니메이션을 확인합니다.
이 시점에서 애니메이션은 타깃 메시에서 제대로 재생될 수도 있습니다. 제대로 재생되는 경우 애니메이션을 저장 및 익스포트합니다. 애니메이션이 아직 잘 맞지 않는 경우, 타깃 메시에 애니메이션을 성공적으로 입히려면 먼저 타깃 메시의 리타깃 포즈가 소스 메시와 일치하도록 조정해야 합니다.
메시 포즈 변경
소스 포즈가 일치한다는 것은 타깃 메시가 스켈레톤에 애니메이션을 효율적으로 입힐 가능성이 더 높다는 뜻입니다.
타깃 메시 포즈를 변경하려면 소스 에셋 기본 포즈와 일치하는 포즈를 다운로드합니다. 다운로드한 포즈가 없는 경우, 소스 에셋과 일치하는 기본 포즈 애니메이션을 직접 제작해야 합니다.
포즈가 준비되었다면 타깃 에셋에서 계속해서 메시 포즈를 변경할 수 있습니다.
리타깃 포즈 표시(Show Retarget Pose) 메뉴에서 리타깃 포즈 표시(Showing Retarget Pose)를 선택합니다 이렇게 하면 두 메시가 모두 기본 포즈로 돌아갑니다.
생성(Create) > 애니메이션 시퀀스에서 임포트(Import From an Animation Sequence)를 선택하고 드롭다운 메뉴에서 FN_Mannequin _TPose를 선택합니다. FN_Mannequin 에셋은 애니메이션 시작 템플릿에서만 사용 가능합니다.
포즈 이름을 Tpose로 변경하고 시퀀스 프레임(Sequence Frame)으로 0을 선택합니다.
리타깃 포즈로 임포트(Import As Retarget Pose)를 선택합니다. 이제 FN_Mannequin이 소스 메시 옆에 Tpose로 서 있습니다.
새로운 포즈를 적용한 타깃 에셋에서 리타기팅된 애니메이션을 다시 재생합니다. 애니메이션이 매끄럽게 재생되어야 합니다.
선택된 애니메이션 익스포트(Selected Animations)를 선택하여 애니메이션을 익스포트합니다. 이렇게 하면 리타깃된 애니메이션 일괄 익스포트(Batch Export Retargeted Animations) 창이 열립니다.
접두사 추가(Add Prefix) 필드에 리타기팅된 애니메이션의 새 이름을 입력하고 익스포트(Export)를 선택합니다. 원한다면 다른 필드도 채워도 되지만, 다른 필드는 필수적이지 않습니다.
애니메이션이 선택된 폴더로 익스포트됩니다. 이제 이 애니메이션을 애니메이션 메시(Animated Mesh) 장치 및 시퀀서와 함께 사용할 수 있습니다.