IK 릭을 사용하여 서로 다른 스켈레탈 메시 간에 애니메이션 리타기팅을 생성할 수 있습니다. 이는 본 수, 본 이름, 방향이 서로 다른 스켈레톤 간에 애니메이션을 전달할 수 있는 동시에, 선택적으로 IK를 사용하여 정확한 손 또는 발의 컨택트 포인트를 유지할 수 있다는 점에서 언리얼 엔진의 기존 애니메이션 리타기팅 기능과 차별화됩니다.
애니메이션 리타기팅은 언리얼 엔진 외부에서 새 애니메이션을 생성하고 관리할 필요 없이, 여러 서로 다른 스켈레톤 간에 애니메이션 데이터를 공유할 수 있게 해줍니다.
이 페이지에서는 리타깃 에디터를 간략하게 살펴봅니다.
언리얼 엔진의 자동 리타기팅 툴을 사용하는 것에 대한 자세한 내용은 리타깃 에디터 문서를 참고하세요.
전제 조건
프로젝트에는 리타기팅 프로세스를 평가할 수 있는 두 개의 서로 다른 스켈레탈 메시가 있습니다.
이미 IK 릭 에셋을 생성하고 그 안에서 리타기팅 체인을 정의한 상태여야 합니다. 이를 수행하는 방법은 IK 릭을 사용한 이족 보행 리타기팅 페이지를 참고하세요.
생성 및 개요
리타깃 에셋을 생성하려면 콘텐츠 브라우저에서 추가(Add)(+)를 클릭한 다음 애니메이션(Animation) > IK 릭(IK Rig) > IK 리타기터(IK Retargeter)를 선택합니다. 애니메이션을 리타기팅할 소스 IK 릭을 선택할 수 있는 대화창이 나타납니다. 선택한 다음 리타깃 에셋의 이름을 지정하고 엽니다.
리타깃 에디터에는 다음과 같은 툴 및 옵션이 포함되어 있습니다.
이제 툴바에서 플레이(Play) 버튼이 있는 것을 확인할 수 있습니다. 리타기팅된 애니메이션을 재생하려면 리타깃 실행(Run Retarget)을 클릭하세요.
툴바: 여기에서 변경사항을 저장하고 관련 에셋을 찾아보는 등의 작업을 수행할 수 있습니다.
리타깃 실행 및 리타깃 포즈 표시(Show Retarget Pose): 소스 또는 타깃 캐릭터에서 베이스 리타깃 포즈를 편집, 저장 및 임포트할 수 있게 해줍니다.
에셋 세팅(Asset Settings): 에셋에 대한 서로 다른 세팅과 프리뷰 메시, 메시 오프셋, 오퍼레이션 스택 실행 등 기타 다양한 표시 옵션을 보여줍니다.
오버라이드 세트(Override Sets): '오버라이드 세트' 패널을 여는 버튼입니다.
변수(Variables): '변수' 패널을 여는 버튼입니다.
오퍼레이션 스택 및 계층구조 패널:
오퍼레이션 스택(Op Stack): 리타깃 에디터는 위에서 아래로 오퍼레이션 순서를 읽어 리타깃을 구성합니다.
계층구조(Hierarchy): 캐릭터의 본 목록이 표시됩니다. 캐릭터를 선택하고 본 목록에서 본과 해당 본에 할당된 체인을 필터링합니다.
에셋 브라우저 및 변수 패널:
에셋 브라우저(Asset Browser): 에디터에서 프리뷰할 소스의 애니메이션을 선택하고 선택된 애니메이션을 익스포트합니다.
변수: 목록에 변수를 추가하고 리타깃 에셋에 대해 Retarget Pose From Mesh AnimNode를 생성합니다.
리타깃 출력 로그(Retarget Output Log): 리타깃 에디터의 현재 상태를 나타내는 디버그 정보, 경고 및 오류를 표시합니다.
디테일, 프리뷰 세팅, 오버라이드 세트 패널:
디테일(Details): 오퍼레이션 또는 본을 선택하면 패널에 세팅 목록이 표시됩니다.
프리뷰 세팅(Preview Settings): 리타기팅된 애니메이션의 서로 다른 프리뷰가 에디터와 뷰포트에 표시됩니다.
오버라이드 세트: 오버라이드를 선택하면 특정 리타깃 오퍼레이션 프로퍼티 값을 오버라이드하고 개별 오퍼레이션을 활성화하거나 비활성화할 수 있습니다.
뷰포트(Viewport): 여기에서 리타기팅되는 소스 및 타깃 캐릭터를 프리뷰하고 디버깅할 수 있습니다.
리타깃 체인
리타깃 프로세스에서 전송하려고 하는 사지 및 기타 부속 항목은 소스와 타깃 IK 릭 모두에 정의되어 있어야 합니다. 이 프로세스는 Autodesk MotionBuilder 또는 Maya 등 다른 애플리케이션에서 릭을 '캐릭터화(characterizing)'하는 것과 유사합니다. 주요 차이점은 개별 본이 아니라 조인트 체인별로 정의한다는 것입니다.이는 본 구조가 크게 다른 캐릭터를 유연하게 리타기팅할 수 있게 해줍니다.
예를 들어 타깃 캐릭터가 소스보다 팔 조인트를 더 많이 포함하고 있더라도, 본의 수와 관계없이 전체 팔 체인을 정의하기 때문에 리타기팅 비헤이비어가 여전히 올바르게 작동합니다.
소스 팔 체인.
타깃 팔 체인.
체인 생성
리타깃 체인 자동 생성(Auto Create Retarget Chains)을 클릭하면 IK 릭 에디터(IK Rig Editor) 툴바에서 리타기팅 체인이 자동으로 생성됩니다. 체인을 생성하려면 두 캐릭터의 IK 릭 에셋을 열고, 'IK 리타기팅(IK Retargeting)' 패널로 이동한 후 다음을 수행합니다.
새 체인 추가(Add New Chain)(+)를 클릭합니다.
새 리타깃 체인 추가(Add New Retarget Chain) 대화창에서 체인 이름(Chain Name)이 올바르게 설정되었는지 확인한 다음 체인 추가(Add Chain)를 클릭합니다. 대부분의 경우 IK 릭은 일반 체인 이름 목록에서 이 값을 자동으로 할당합니다.
대상 체인에 포함할 모든 본을 선택한 다음 계층구조 패널에서 우클릭하고 새 리타깃 체인...(New Retarget Chain…)을 선택하여 체인을 생성할 수도 있습니다.
체인 프로퍼티 및 이름
체인에는 다음 파라미터를 설정해야 합니다.
| 이름 | 설명 |
|---|---|
체인 이름(Chain Name) | 이 체인의 이름입니다. 이 이름은 임의로 지정할 수 있지만, 다른 IK 릭에 있는 대상 리타깃 체인과 일치해야 합니다. 체인 이름 일치 프로세스는 퍼지 스트링 일치 방식으로 결정됩니다. 따라서 각 IK 릭의 체인 이름이 완벽하게 일치할 필요는 없지만, 이름을 비슷하게 맞춰주는 것이 좋습니다. 예를 들어 더 정확할 수 있는 다른 이름이 없는 한 |
시작 본(Start Bone) | 리타깃 체인의 시작 본입니다. 팔을 리타기팅하는 경우 보통 위팔 본을 선택합니다. |
끝 본(End Bone) | 리타깃 체인의 끝 본입니다. 팔을 리타기팅하는 경우 보통 손 본을 선택합니다. |
IK 목표(IK Goal) | 리타기팅 정확도가 떨어질 수 있는 사지나 체인을 안정화하기 위해 여기에서 선택적으로 IK 목표를 선택할 수 있습니다. 이는 해당 목표에 대한 솔버도 생성해야 함을 의미하며, 이 솔버는 리타기팅 프로세스가 끝난 후에 솔브를 실행합니다. |
체인 이름 프로퍼티는 체인을 생성할 때 선택된 본 이름에 따라 자동으로 채워집니다. 시스템이 일반적으로 사용되는 본 이름을 찾아 선택된 본에 가장 적합한 이름을 선택합니다. 이 매핑 목록은 다음과 같습니다.
| 체인 이름 매핑 | 검색할 본 이름 |
|---|---|
Head |
|
Neck |
|
Leg |
|
Arm |
|
Spine |
|
Jaw |
|
Tail |
|
Thumb |
|
Index |
|
Middle |
|
Ring |
|
Pinky |
|
Root |
|
팔과 다리처럼 대칭을 이루는 체인의 경우, 체인 내 본의 평균 위치를 비교한 다음 Left 또는 Right 접두사를 할당하여 자동 명명 기능이 결정됩니다. 선택된 본이 대부분 음의 X 쪽에 있으면 '왼쪽', 대부분 양의 X 쪽에 있으면 '오른쪽'이 되며, 상대적으로 X축에 중심을 두고 있으면 '중앙'으로 간주되어 접두사가 적용되지 않습니다.
이름이 비슷한 본들에 대하여 여러 체인이 생성된 경우, 각 후속 체인에 숫자 접미사가 적용됩니다. 예를 들어 헤드가 여러 개 있는 크리처를 리타기팅하는 경우, 결과 체인은 Head_1, Head_2, Head_3으로 명명됩니다. 체인 이름을 원하는대로 수동으로 지정할 수도 있지만, 이 규칙은 표준 명명 규칙을 확립하고 다른 IK 릭을 사용해 신속하게 리타기팅하기에 유용합니다.
골반
체인을 정의하는 것 외에도 골반 본을 정의해야 합니다. 이 작업은 캐릭터의 루트 모션을 정의하고 비율에 맞는 방식으로 이전하기 위한 작업입니다.
체인과 마찬가지로, 골반은 IK 릭 에디터에서 정의됩니다. 이를 수행하려면 두 캐릭터의 IK 릭 에셋을 열고 계층구조 패널로 이동한 다음 본을 우클릭하고 골반 설정(Set Pelvis)을 선택합니다.
완료되면, 골반이 계층구조 및 IK 리타기팅 패널에서 선택된 본으로 표시됩니다.
리타기팅 스택 프레임워크
리타깃 스택 프레임워크는 본 계층구조에서 선택된 본 체인에 대해 평가되는 모듈형 오퍼레이션의 컬렉션입니다. 리타기팅 오퍼레이션은 스켈레탈 메시를 편집하고 애니메이션을 리타기팅할 수 있는 보다 퍼포먼스가 뛰어난 방법입니다.
포즈 또는 애니메이션을 리타기팅하기 위해 선택된 본 체인에 필요한 오퍼레이션만 선택하고 정렬하여, 리타기터에 커스텀 오퍼레이션을 추가합니다. 각 오퍼레이션은 스택 내에서 순서를 변경할 수 있습니다.
일부 오퍼레이션에는 기존 오퍼레이션을 확장하기 위해 특정 순서나 방법으로 적용해야 하는 커스텀 로직 및 평가를 위한 오퍼레이션 서브 스택이 있습니다.
모든 리타기팅 오퍼레이션은 커스텀 LOD 한계치를 설정할 수 있도록 지원합니다. 커스텀 LOD 한계치는 오퍼레이션별로 설정되며, 이를 통해 더 높은 LOD에서 비용이 많이 드는 단계를 자동으로 건너뛸 수 있게 해줍니다. 일부 오퍼레이션은 세팅에 디버깅 기능이 포함되어 있습니다.
C++를 사용하여 자신만의 오퍼레이션을 생성할 수 있습니다.
리타기팅 오퍼레이션 스택 및 개별 오퍼레이션에 대한 자세한 내용은 리타깃 오퍼레이션 스택을 참고하세요.
리타깃 포즈
리타기팅할 캐릭터의 레퍼런스 포즈에 따라 이 포즈를 베이스 리타깃 포즈의 형태로 편집해야 할 수도 있습니다. 일반적으로, 타깃 캐릭터의 레퍼런스 포즈가 소스와 다를 때(예: A 포즈가 아닌 T 포즈로 되어 있는 경우) 이 오퍼레이션을 수행해야 합니다. 이러한 리타깃 포즈를 일치시키면 리타기팅의 정확도가 향상됩니다.
소스 캐릭터의 레퍼런스 포즈는 A 포즈입니다.
타깃 캐릭터의 레퍼런스 포즈는 T 포즈입니다.
툴바에서 리타깃 포즈 편집(Editing Retarget Pose)으로 토글한 다음 계층구조 패널의 리타깃 포즈 툴을 사용하여 서로 다른 포즈를 편집, 임포트 또는 익스포트하여 레퍼런스 포즈의 불일치를 해결할 수 있습니다.
소스(Source) 또는 타깃(Target)을 클릭하면 '리타깃 포즈' 툴 및 '계층구조' 패널의 포커스가 소스 또는 타깃 캐릭터로 변경됩니다.
포즈 생성 및 편집
리타기팅된 캐릭터의 디폴트 포즈를 편집할 수도 있지만, 조정을 해야 하는 경우에는 새 리타깃 포즈를 생성하는 것을 권장합니다. 이를 수행하려면 생성(Create)(+) > 생성(Create)을 클릭하고, 새 리타깃 포즈의 이름을 지정한 다음 확인(Ok)을 클릭합니다.
다음으로 현재 리타깃 포즈가 새 포즈로 설정되어 있는지 확인한 후 편집 모드를 활성화합니다. 이제 뷰포트에서 본을 선택 및 수정하고 포즈를 일치시킬 수 있습니다. 완료되면 편집 모드를 비활성화합니다.
정확도를 높이기 위해 디테일 패널에서 리타깃 포즈를 수치로 수정할 수 있으며, 회전 값을 0, 0, 0으로 설정하면 본이 원래의 레퍼런스 포즈로 돌아갑니다.
포즈 임포트 및 익스포트
새 리타깃 포즈를 수동으로 생성하는 대신, 애니메이션 시퀀스 또는 포즈 에셋에서 임포트할 수도 있습니다.
애니메이션 시퀀스에서 임포트하려면 생성(+) > 애니메이션 시퀀스에서 임포트(Import from Animation Sequence)를 클릭합니다. 대화창에서 임포트해 올 시퀀스를 선택하고 다음 파라미터를 설정합니다.
시퀀스 프레임(Sequence Frame)은 임포트한 포즈의 기준이 될 애니메이션 시퀀스의 특정 프레임을 정의합니다. 기본적으로 이 값은 0으로 설정되며, 이는 애니메이션의 첫 번째 프레임을 사용합니다.
포즈 이름(Pose Name)은 임포트 시 리타깃 포즈의 이름을 정의합니다.
포즈 에셋에서 임포트하려면 생성(+) > 포즈 에셋에서 임포트(Import from Pose Asset)를 클릭합니다. 대화창에서 임포트할 대상 포즈를 선택하고, 드롭다운 메뉴를 클릭하여 사용할 특정 포즈 이름을 설정한 다음 리타깃 포즈 임포트(Import Retarget Pose)를 선택합니다.
또한 리타깃 포즈를 포즈 에셋으로 익스포트하여 프로젝트 내의 다른 IK 리타기팅 에셋과 공유할 수 있습니다. 이를 수행하려면 생성(+) > 포즈 에셋 익스포트(Export Pose Asset)를 클릭하고, 에셋 이름을 지정한 다음 저장(Save)을 클릭합니다.
기타 워크플로
리타깃 포즈 영역은 리타깃 포즈의 생성과 편집을 돕는 다음 기타 툴을 포함합니다.
| 이름 | 설명 |
|---|---|
현재 리타깃 포즈(Current Retarget Pose) | 소스 또는 타깃 캐릭터에 의해 사용되는 현재 리타깃 포즈를 표시합니다. 처음에는 디폴트 포즈만 나열되고 새 포즈를 생성함에 따라 목록이 채워집니다. 드롭다운 메뉴를 클릭하여 다른 포즈를 선택할 수 있습니다. |
리타기터 실행(Run Retargeter)/리타깃 포즈 편집(Edit Retarget Pose) | 활성화한 경우, 리타기터가 연동되며 애니메이션 시퀀스를 사용하여 현재 리타깃 포즈의 결과를 프리뷰할 수 있습니다. 비활성화한 경우, 리타깃 포즈 편집 모드로 다시 전환되며 필요한 경우 여기에서 추가적인 보정을 계속할 수 있습니다. 리타깃 포즈 편집 모드가 활성화되었음을 나타내기 위해 뷰포트가 파란색 외곽선으로 하이라이트됩니다. |
리타깃 포즈 블렌드(Retarget Pose Blend) | 리타깃 포즈를 여러 번 편집할 때는 어떤 본에 어떤 변경사항이 발생했는지 프리뷰하는 것이 도움이 될 수 있습니다. 이를 돕기 위해 리타깃 포즈 블렌드 슬라이더를 편집할 수 있습니다. 0으로 설정하면 포즈가 스켈레탈 메시의 디폴트 레퍼런스 포즈로 되돌아갑니다. 이 값을 1로 설정하면 포즈가 현재의 리타깃 포즈로 변경됩니다. |
리셋(Reset) | 리셋 메뉴를 사용하면 리타깃 포즈를 스켈레탈 메시의 디폴트 레퍼런스 포즈로 리셋할 수 있습니다. 다음 옵션 중에서 선택할 수 있습니다.
|
자동 정렬(Auto Align) | 소스 스켈레톤의 본을 타깃에 맞춰 자동으로 정렬하거나, 타깃 스켈레톤의 본을 소스에 맞춰 자동으로 정렬합니다. 다음 옵션 중에서 선택할 수 있습니다.
|
복제(Duplicate) | 생성(+) > 현재 복제(Duplicate Current)를 클릭하고 새 포즈의 이름을 지정하여 현재 리타깃 포즈를 복제할 수 있습니다. |
이름 변경(Rename) | 이름 변경을 클릭하고 새 이름을 입력한 다음 확인을 클릭하여 현재 리타깃 포즈의 이름을 변경합니다. |
계층구조 표시
계층구조 패널은 활성화된 상태에 따라 소스 또는 타깃 캐릭터의 스켈레탈 계층구조를 표시합니다. 본 이름이 하이라이트되어 리타깃 체인에서 사용 중인지 여부를 나타내며, 리타깃 체인 열에는 사용 중인 체인의 이름이 함께 표시됩니다.
검색을 통해 특정 본 이름 또는 리타깃 체인을 찾아 필터링할 수 있습니다.
필터 드롭다운 메뉴를 클릭하면 다음 필터를 설정할 수 있습니다.
체인에 있지 않은 본 숨기기(Hide Bones Not in a Chain): 리타깃 에디터가 해당 체인을 사용 중인지 여부와 관계없이 체인 내에서 사용되지 않는 본을 숨깁니다.
리타깃되지 않은 본 숨기기(Hide Bones Not Retargeted): 리타깃 에디터에서 사용되지 않는 모든 본을 숨깁니다.
리타깃된 본 숨기기(Hide Retargeted Bones): 리타깃 에디터에서 사용되는 본을 숨깁니다.
애니메이션 프리뷰 및 익스포트
에셋 브라우저 패널은 여러 에셋에 적용된 리타기팅 이펙트를 프리뷰하고 익스포트하는 데 사용됩니다. 에셋을 더블클릭하여 재생할 수 있습니다.
타깃 캐릭터에 적용된 리타기팅 결과가 만족스러우면 해당 캐릭터의 스켈레톤과 호환되는 애니메이션 시퀀스에 애니메이션을 익스포트할 수 있습니다. 이를 수행하려면 에셋 브라우저 패널에서 익스포트할 애니메이션을 선택한 다음 선택된 애니메이션 익스포트(Export Selected Animations)를 클릭합니다.
익스포트 대화창에서 익스포트 폴더를 선택한 후, 선택적으로 다음 이름변경 프로퍼티를 지정합니다.
접두사 추가(Add Prefix) - 새 에셋 이름 앞에 텍스트를 추가합니다.
접미사 추가(Add Suffix) - 새 에셋 이름 뒤에 텍스트를 추가합니다.
검색(Search for) 및 다음으로 대체(Replace with) - 파일 이름에서 기존 이름을 찾아 지정된 이름으로 대체합니다. 검색 및 대체는 대소문자를 구분하지 않습니다.
리타기팅된 애니메이션 시퀀스를 저장하려면 익스포트(Export)를 클릭합니다.
리타기터 프로퍼티 및 세팅
에셋 세팅
에셋 세팅 버튼을 누르고 '디테일' 패널에서 프로파일 오퍼레이션(Profile Ops)을 활성화하면 각 오퍼레이션의 런타임을 '디테일' 패널에서 확인할 수 있습니다.
| 이름 | 설명 |
|---|---|
소스 IK 릭 에셋(Source IKRig Asset) | 애니메이션을 복사해 올 소스 IK 릭입니다. |
소스 프리뷰 메시(Source Preview Mesh) | 소스 스켈레탈 메시입니다. 이를 변경할 경우, IK 리타기팅 시스템은 이름 일치를 사용하여 IK 릭을 서로 다른 메시 및 스켈레톤과 호환되도록 만들려고 시도합니다. |
타깃 IK 릭 에셋(Target IKRig Asset) | 애니메이션을 복사해 넣을 타깃 IK 릭입니다. |
타깃 프리뷰 메시(Target Preview Mesh) | 타깃 스켈레탈 메시입니다. 이를 변경할 경우, IK 리타기팅 시스템은 이름 일치를 사용하여 제공된 스켈레톤 및 비율에 맞게 IK 릭을 자동으로 적응시키려고 시도합니다. 호환되지 않는 사항은 리타깃 출력 로그에 경고 또는 오류로 출력됩니다. |
타깃 메시 오프셋(Target Mesh Offset) | 타깃 스켈레탈 메시를 소스에서 오프셋하기 위해 적용할 수 있는 위치 오프셋입니다. 양쪽 캐릭터 모두를 프리뷰할 때, 또는 타깃 캐릭터가 매우 커서 더 큰 오프셋이 필요할 때 도움이 됩니다. |
타깃 메시 스케일(Target Mesh Scale) | 타깃 캐릭터의 스케일을 키우거나 줄이는 데 사용할 수 있는 프리뷰 스케일 모디파이어입니다. 타깃이 소스에 비해 상대적으로 아주 크거나 작은 경우, 이 값을 변경하여 크기를 편의상 조금 더 비슷하게 만들면 유용합니다. |
소스 메시 오프셋(Source Mesh Offset) | 타깃 메시 오프셋과 유사하게, 이는 소스 스켈레탈 메시를 타깃에서 오프셋하기 위해 적용할 수 있는 위치 오프셋입니다. |
소스 메시 표시(Show Source Mesh) | 에디터 뷰포트에서 소스 스켈레톤 메시를 표시하거나 숨깁니다. |
타깃 메시 표시(Show Target Mesh) | 에디터 뷰포트에서 타깃 스켈레톤 메시를 표시하거나 숨깁니다. |
소스 스켈레톤 표시(Show Source Skeleton) | 에디터 뷰포트에서 소스 스켈레톤을 표시하거나 숨깁니다. 스켈레톤을 보려면 뷰포트가 본을 표시하고 있는 상태여야 합니다. |
타깃 스켈레톤 표시(Show Target Skeleton) | 에디터 뷰포트에서 타깃 스켈레톤을 표시하거나 숨깁니다. 스켈레톤을 보려면 뷰포트가 본을 표시하고 있는 상태여야 합니다. |
소스 스켈레톤 컬러 오버라이드(Override Source Skeleton Color) | 에디터 뷰포트에서 소스 스켈레톤 컬러를 오버라이드합니다. |
소스 오버라이드 컬러(Source Override Color) | 새 스켈레톤 컬러를 선택합니다. |
타깃 스켈레톤 컬러 오버라이드(Override Target Skeleton Color) | 에디터 뷰포트에서 타깃 스켈레톤 컬러를 오버라이드합니다. |
타깃 오버라이드 컬러(Target Override Color) | 새 스켈레톤 컬러를 선택합니다. |
프리뷰에서 루트 잠금 무시(Ignore Root Lock in Preview) | true로 설정한 경우, 루트 강제 잠금(Force Root Lock)이 활성화된 애니메이션 시퀀스도 해당 세팅이 비활성화된 것처럼 작동합니다. 이는 리타깃 에디터 내의 프리뷰에만 영향을 미칩니다. 익스포트된 애니메이션의 비헤이비어를 제어하려면 ExportRootLockMode를 사용하세요. 이 세팅은 소스에서 루트 모션이 복사되는 런타임 리타기팅에는 아무런 영향을 미치지 않습니다. |
디버그 드로(Debug Draw) | 체인을 타기팅할 수 있게 해줍니다. 툴은 오퍼레이션별로 개별화되며, 오퍼레이션 스택을 통해 제어됩니다. |
프로파일 오퍼레이션(Profile Ops) | 오퍼레이션 스택의 퍼포먼스 프로파일링을 토글합니다. |
오버라이드 세트
오버라이드 세트는 단일 리타깃 에셋 내에서 스테이트 기반 리타기팅 비헤이비어의 베리에이션을 정의할 수 있는 런타임에서 환경설정 가능한 시스템을 제공합니다. 런타임에서 프로퍼티 값을 수동으로 바꾸거나 프로젝트에 맞게 스케일 조절되지 않는 단일 환경설정을 수용하는 대신, 오버라이드 세트를 사용하여 동일한 리타기터로 서로 다른 체인 세팅을 가진 애니메이션에 리타기팅 비헤이비어를 적용함으로써 프로덕션 캐릭터를 효율적으로 관리할 수 있습니다.
오버라이드 세트를 사용하면 다음을 수행할 수 있습니다.
리타깃 에디터 내에서 직접 리타깃 오버라이드 세트를 생성하고, 이름을 짓고, 관리할 수 있습니다.
제작 동안 오버라이드 세트를 생성하고 이들 간에 전환할 수 있습니다.
모든 오버라이드의 활성 스테이트를 변경할 수 있습니다.
리타깃 오버라이드 세트
각 오버라이드 세트는 다음을 수행할 수 있습니다.
특정 리타깃 오퍼레이션 프로퍼티 값을 오버라이드하고, 개별 오퍼레이션을 활성화하거나 비활성화할 수 있습니다.
새로운 리타깃 포즈 오버라이드 오퍼레이션을 사용하여 다른 리타깃 포즈를 할당할 수 있습니다. 제작 동안 변수를 사용하여 오버라이드 세트 간에 전환함으로써 애니메이션 기반 다이내믹 컨트롤을 위한 애님 커브를 리타깃 프로퍼티에 바인딩할 수 있습니다.
오버라이드 세트는 런타임에서 Retarget Pose From Mesh AnimNode 및 UAF 함수를 통해 할당되며, 블루프린트 및 코드 기반 워크플로를 모두 지원합니다. 에디터에서 블루프린트와 유사한 변수를 선언하고, 이를 메시에서 포즈 리타깃 노드의 입력 핀으로 노출한 후 오버라이드 세트 내의 오퍼레이션 프로퍼티에 연결할 수 있습니다. 이를 통해 에셋 외부에서 별도의 블루프린트 와이어링을 하지 않고도 IsHoldingWeapon 또는 IsEmote와 같은 게임플레이 스테이트가 리타기팅 비헤이비어를 제어하도록 할 수 있습니다.
컨텍스트 메뉴를 통한 오버라이드 세트 복제 기능은 유사한 베리언트를 빠르게 제작할 수 있도록 도와줍니다. 디폴트 오버라이드 세트를 정의하여 기준 환경설정을 설정할 수 있습니다. 오버라이드 세트 생성 및 관리는 파이프라인 및 자동화 사용 사례를 위해 Python 및 블루프린트를 통해서도 지원됩니다.
오퍼레이션 프로퍼티 오버라이드하기
오퍼레이션 내의 모든 프로퍼티는 오버라이드 세트 내에서 오버라이드할 수 있습니다. 오퍼레이션을 오버라이드하려면 다음 단계를 따릅니다.
오버라이드할 오퍼레이션 프로퍼티를 지정하고, 세트가 활성화되었을 때 베이스 리타깃 에셋 환경설정에 오버라이드 값을 적용합니다.
'오버라이드 세트' 탭에서 오버라이드 세트를 선택하고 오퍼레이션 스택에 있는 아무 오퍼레이션이나 우클릭합니다.
모든 오퍼레이션의 프로퍼티를 오버라이드 세트에 추가할 수 있습니다. 모든 프로퍼티를 추가하거나 변경된 모든 프로퍼티를 추가할 수 있는 추가 액션이 제공됩니다.
오버라이드 세트를 통해 오퍼레이션 스택 내의 개별 오퍼레이션을 켜고 끌 수 있으며, 이를 통해 베이스 환경설정을 수정하지 않고도 전체 리타기팅 비헤이비어를 토글할 수 있습니다. 오버라이드 세트는 자손을 가질 수 있습니다. 자손이 활성화되어 있는 경우, 부모의 오버라이드도 함께 포함됩니다.
자세한 내용은 리타깃 포즈 오퍼레이션을 참고하세요.
오버라이드 익스포트
오버라이드 세트를 사용하여 오프라인 리타기팅을 위한 세팅의 목록을 지정할 수도 있습니다. 리타깃 에디터에서 원하는 오버라이드 세트를 활성화한 다음 익스포트합니다. 배치 리타기팅의 경우, 자동 생성된 리타기터가 아닌 기존 리타기터를 사용한 다음 적용할 오버라이드 세트(Override Set to Apply) 드롭다운 메뉴에서 적용할 오버라이드를 선택합니다.
오버라이드 세트 스크립팅
오버라이드 세트 스크립팅을 사용하면 Python 스크립팅으로 리타깃 오버라이드 세트를 생성하고 환경설정할 수 있으므로 파이프라인 툴링, 배치 구성 및 자동화된 오버라이드 제작 워크플로를 용이하게 구현할 수 있습니다. 리타깃 에디터에서 커스텀 오버라이드 세트를 사용하고 있다고 지정한 후 노드에 오버라이드의 이름을 입력합니다. 이는 이전 리타깃 프로파일의 워크플로를 대체합니다.
변수
제작하는 동안 변수를 사용하여 오버라이드 세트를 생성하고 이들 간에 전환합니다.
선언된 변수는 Retarget Pose From Mesh AnimNode의 입력 핀으로 노출되므로 IsHoldingWeapon, IsEmote 또는 로코모션 관련 입력과 같은 게임플레이 스테이트 값을 평가 시점에 애님 블루프린트/UAF에서 리타기터로 직접 전달할 수 있습니다. 블루프린트 노드 내에서 변수를 바인딩할 수 있지만, 변수가 오버라이드 세트의 바인딩된 프로퍼티에 적용되려면 해당 오버라이드 세트가 활성화되어 있어야 합니다.
런타임에서 오버라이드 세트
Retarget Pose From Mesh AnimNode 및 UAF 노드에 리타깃 오버라이드 세트를 할당하여 애니메이션 블루프린트 또는 언리얼 애니메이션 프레임워크의 리타기팅 시점에 환경설정 베리언트를 활성화할 수 있습니다. 적용할 오버라이드 세트 배열에 배열 엘리먼트를 추가하여 사용 중인 오버라이드 세트의 수를 지정한 다음, 노드에 오버라이드 이름을 제공합니다.
리타깃 에디터에서 단일 값을 가진 블루프린트와 유사한 변수를 선언하고, 이를 리타깃 오버라이드 세트 내의 오퍼레이션 프로퍼티에 바인딩할 수 있습니다.
배열, 맵 또는 세트는 사용할 수 없습니다.
애님 커브 바인딩하기
변수와 마찬가지로, 실행 중인 애니메이션 시퀀스의 애님 커브 값을 리타깃 오버라이드 세트 내의 특정 리타깃 프로퍼티에 바인딩할 수 있습니다. 이는 애니메이션에서 제작된 커브 데이터가 런타임에서 리타기팅 비헤이비어를 동적으로 제어할 수 있게 해줍니다. 예를 들어 블루프린트 또는 코드 변경 없이도 캐릭터의 스테이트가 전환됨에 따라 서로 다른 체인 환경설정 간에 블렌딩할 수 있습니다.