이 튜토리얼에서는 런타임에서 언리얼 엔진 5 마네킹인 퀸(Quinn)에서 메타휴먼으로 애니메이션을 리타기팅하고 메타휴먼을 레벨 내에서 플레이 가능한 캐릭터로 사용하는 방법을 알아봅니다
이 튜토리얼은 IK 릭 다리 배치 기능을 사용합니다. 애니메이팅된 메타휴먼의 다리는 터레인에 동적으로 맞춰집니다.
필수 지식 및 구성
이 페이지의 내용을 따라하려면 언리얼 엔진의 애니메이션 블루프린트에 대한 기초 지식이 필요합니다.
이 페이지에서 설명되어 있는 단계를 따르기 전에 다음을 수행해야 합니다.
-
삼인칭(Third Person) 템플릿을 사용하여 새 언리얼 엔진 프로젝트를 생성합니다. 이 단계를 완료하는 데 도움이 필요하면 다음 언리얼 엔진 5 문서를 참조하세요.
-
메타휴먼을 다운로드하여 프로젝트에 임포트합니다. 이 단계를 완료하는 데 도움이 필요하면 다음 문서를 참조하세요.
워크플로
이 워크플로는 다음과 같은 단계로 구성됩니다.
- 제어 가능한 메타휴먼 블루프린트를 생성합니다.
- 새 애니메이션 블루프린트를 생성 및 환경설정합니다.
- 제어 가능한 메타휴먼 블루프린트 환경설정을 완료합니다.
- 퀸 메시를 숨깁니다.
- 메타휴먼을 게임 모드 블루프린트의 디폴트 폰 클래스로 설정합니다.
제어 가능한 메타휴먼 블루프린트 생성
우선 제어 가능한 메타휴먼 블루프린트를 생성합니다. 이 튜토리얼의 후반부에 이 블루프린트를 사용하여 퀸을 레벨 내에서 플레이 가능한 캐릭터로서 메타휴먼으로 대체합니다.
아래 워크플로에서는 두 블루프린트 에디터를 오가야 합니다. 단계를 따르기 전에 올바른 블루프린트 에디터에 들어가 있는지 확인하세요.
다음 단계를 따릅니다.
-
콘텐츠 브라우저(Content Browser) 에서
BP_ThirdPersonCharacter
블루프린트 클래스를 찾습니다. 이 블루프린트는Content/ThirdPerson/Blueprints
폴더에 있습니다. -
컨텍스트 메뉴에서
BP_ThirdPersonCharacter
블루프린트를 우클릭하고 복제(Duplicate) 를 선택합니다. -
복제된 블루프린트를
BP_MetaHumanCharacter
로 명명합니다. -
블루프린트 에디터 에서
BP_MetaHumanCharacter
블루프린트를 더블클릭하여 열고 뷰포트(Viewport) 탭으로 전환합니다.새로 생성된 BP_MetaHuman 캐릭터 블루프린트는 아직 퀸 스켈레탈 메시를 사용합니다. 다음 단계에서 이를 변경합니다.
-
콘텐츠 브라우저 로 돌아가서 메타휴먼 블루프린트를 찾습니다. 이 블루프린트는
Content/MetaHumans/(메타휴먼 이름)
폴더에 있으며, 블루프린트 이름은BP_(메타휴먼 이름)
입니다.이 튜토리얼에서는 해당 블루프린트가
Content/MetaHumans/Ada
에 있고BP_Ada
로 명명된 Ada 프리셋을 사용합니다. 블루프린트 에디터에서BP_Ada
블루프린트를 더블클릭하여 열고 뷰포트 탭으로 전환합니다. -
BP_Ada
블루프린트의 루트 컴포넌트를 다음과 같이 모두 선택합니다.- 발(Feet)
- 다리(Legs)
- 상반신(Torso)
- 페이스(Face)
- 헤어(Hair)
- 눈썹(Eyebrows)
- 솜털(Fuzz)
- 속눈썹(Eyelashes)
- 콧수염(Mustache)
- 수염(Beard)
여러 개의 컴포넌트를 선택하려면 선택할 첫 컴포넌트를 클릭합니다. 그런 다음 Shift 키를 누른 상태로 선택할 마지막 컴포넌트를 클릭합니다.
Ctrl + C 키보드 단축키를 사용하여 선택한 컴포넌트를 복사합니다.
-
BP_MetaHumanCharacter
블루프린트로 전환합니다. 컴포넌트 패널에서 Mesh (CharacterMesh0) 컴포넌트를 클릭하고 Ctrl + V 키보드 단축키를 사용하여 이전 단계에서 복사한 컴포넌트를 붙여넣습니다. -
이전 단계를 계속하여 컴포넌트 패널에서 앞서 복사한 컴포넌트 를 선택한 뒤 클릭하고 드래그하여 Mesh (Character Mesh) 컴포넌트에 부모 지정합니다.
-
이전 단계에서 옮긴 각 컴포넌트 를 클릭하고 드래그하여 알맞은 메시 컴포넌트 에 부모 지정합니다. 완료된 계층구조는 아래 스크린샷과 같아야 합니다.
모든 컴포넌트에 알맞은 부모가 있으면 이 창의 컴포넌트 순서는 관계 없습니다.
-
바디, 다리, 발, 페이스, 상반신 컴포넌트를 선택(1)합니다. 그런 다음 디테일(Details) 패널에서 트랜스폼(Transform) 섹션으로 이동합니다. 위치(Location) 및 회전(Rotation) 값 옆의 리셋(Reset) 버튼을 클릭(2)하여 두 값을 '0'으로 리셋합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
여러 개의 컴포넌트를 비연속적으로 선택하려면 Ctrl 키를 길게 누르고 선택할 각 컴포넌트를 클릭합니다.
블루프린트는 계속해서 퀸 메시가 Ada에 겹친 모습을 표시합니다. 다음 단계에서 이러한 문제를 수정합니다.
새 애니메이션 블루프린트 생성
다음으로는 애니메이션 블루프린트를 생성하고 리타기팅합니다. 다음 단계를 따릅니다.
-
이전 섹션에 이어서
BP_MetaHumanCharacter
블루프린트의 블루프린트 에디터 에서 바디(Body) 컴포넌트를 클릭하여 선택(1)합니다. 디테일 패널의 메시(Mesh) 섹션에서 스켈레탈 메시(Skeletal Mesh) 프로퍼티를 찾고 그 옆의 에셋 탐색(Browse to Asset) 을 클릭합니다.이미지를 클릭하면 최대 크기로 볼 수 있습니다.
그러면 메타휴먼의 바디 스켈레탈 메시가 있는 곳에서 콘텐츠 브라우저가 열립니다. Ada의 경우 이 메시는
Content/MetaHumans/Ada/Female/Medium/NormalWeight/Body
폴더에 있으며 이름은f_med_nrw_body
일 것입니다. -
f_med_nrw_body
스켈레탈 메시를 우클릭하고 컨텍스트 메뉴에서 생성(Create) > 애님 블루프린트(Anim Blueprint) 를 선택합니다. 새 블루프린트를ABM_MHRuntimeRTG
로 명명합니다.이 액션은 동일한 폴더에 추가 에셋을 몇 개 생성합니다. 이에 대해서는 신경 쓰지 않아도 됩니다.
-
콘텐츠 브라우저 에서
ABM_MHRuntimeRTG
블루프린트를 더블클릭하여 엽니다. -
AnimGraph 에서 우클릭하고 Retarget Pose from Mesh 노드를 검색하여 생성합니다. 이 노드를 아래와 같이 Output Pose 노드에 연결합니다.
-
Retarget Pose from Mesh 노드를 클릭하여 선택합니다. 그런 다음 디테일 패널의 리타기팅 툴 에셋(Retargeter Asset) 드롭다운에서 RTG_Mannequin 리타깃 에셋을 선택합니다.
-
애니메이션 블루프린트를 컴파일 하고 저장 합니다.
제어 가능한 메타휴먼 블루프린트 환경설정 완료
생성한 제어 가능 메타휴먼 블루프린트를 환경설정하려면 몇 가지 추가 단계를 따라야 합니다.
-
BP_Ada
블루프린트로 돌아갑니다. 함수(Functions) 패널에서 EnableMasterPose 함수를 클릭하고 Ctrl + C 를 눌러 복사합니다. -
BP_MetaHumanCharacter
블루프린트로 전환합니다. 함수 패널을 클릭하고 Ctrl + V 를 눌러 EnableMasterPose 함수를 붙여넣습니다. -
BP_Ada
블루프린트로 전환합니다. 함수 패널에서 Construction Script 를 더블클릭하여 엽니다. 다음 노드를 Shift를 누른 채 클릭 또는 좌클릭 후 드래그하여 모두 선택한 다음 Ctrl + C 를 눌러서 복사합니다.- Enable Master Pose (3개 모두)
- 발
- 다리
- 상반신
-
BP_MetaHumanCharacter
블루프린트로 전환합니다. 함수 패널에서 Construction Script 를 더블클릭하여 열고 Ctrl + V 를 클릭하여 복사한 노드를 붙여넣습니다. -
Construction Script 노드의 출력 핀을 첫 Enable Master Pose 노드의 입력 핀에 아래와 같이 연결합니다.
-
계속
BP_MetaHumanCharacter
블루프린트에 있는 상태에서 뷰포트로 전환하고 바디(Body) 컴포넌트를 클릭(1)하여 선택합니다. 디테일 패널의 애니메이션(Animation) 섹션(2)에서 다음 프로퍼티를 설정합니다.- 애니메이션 모드(Animation Mode): 애니메이션 블루프린트 사용(Use Animation Blueprint)
- 애니메이션 블루프린트(Animation Blueprint): 이 튜토리얼에서 앞서 생성한
ABM_MHRuntimeRTG
애니메이션 블루프린트를 찾아서 선택합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
퀸 메시 숨기기
BP_MetaHumanCharacter
블루프린트에서 마지막으로 할 일은 퀸 메시를 숨기는 것입니다. 이렇게 하려면 다음 단계를 따릅니다.
-
BP_MetaHumanCharacter
블루프린트에서 Mesh (CharacterMesh) 컴포넌트를 클릭하여 선택합니다. 그리고 디테일 패널에서 다음 프로퍼티를 변경합니다.- 표시(Visible): 이 체크 박스를 체크 해제합니다.
- 비저빌리티 기반 애님 틱 옵션(Visibility Based Anim Tick Option): '항상 포즈 틱 및 본 새로고침(Always Tick Pose and Refresh Bones)'으로 설정합니다.
디테일 패널의 검색(Search) 상자를 사용하여 프로퍼티를 빠르게 찾습니다.
-
블루프린트를 컴파일 하고 저장 합니다.
메타휴먼을 디폴트 폰 클래스로 설정
다음으로 BP_MetaHumanCharacter
블루프린트를 현재 게임 모드의 디폴트 폰 클래스(Default Pawn Class) 로 할당해야 합니다. 이렇게 하면 게임에 시작 시 해당 메타휴먼을 플레이 가능한 캐릭터로 사용하도록 알립니다.
다음 단계를 따릅니다.
-
콘텐츠 브라우저 에서
Content/ThirdPerson/Blueprints
폴더로 이동합니다. -
BP_ThirdPersonGameMode
블루프린트를 더블클릭하여 엽니다. -
디폴트 폰 클래스 프로퍼티를
BP_MetaHuman Character
로 설정합니다. -
블루프린트를 컴파일 하고 저장 합니다.
최종 결과
게임을 플레이하면 플레이어 캐릭터가 이제 메타휴먼이 됩니다. 이 메타휴먼은 대기, 달리기, 점프 애니메이션을 갖추고 있습니다. 캐릭터의 발이 터레인에 맞춰집니다.