설정 가이드
이 가이드는 MetaHuman 캐릭터와 함께 Runtime MetaHuman Lip Sync를 위한 기본 설정 과정을 안내합니다.
참고: Runtime MetaHuman Lip Sync는 MetaHuman과 커스텀 캐릭터 모두에서 작동합니다. 커스텀 캐릭터 설정에 대한 자세한 지침은 커스텀 캐릭터 설정 가이드를 참조하세요.
필수 조건
시작하기 전에 다음을 확인하세요:
- 프로젝트에서 MetaHuman 플러그인이 활성화되어 있습니다 (참고: UE 5.6부터는 이 단계가 더 이상 필요하지 않으며 MetaHuman 기능이 엔진에 직접 통합됨)
- 프로젝트에 최소 하나 이상의 MetaHuman 캐릭터가 다운로드되어 사용 가능한 상태입니다
- Runtime MetaHuman Lip Sync 플러그인이 설치되어 있습니다
표준 모델 확장 플러그인
표준 모델을 사용할 계획이라면 확장 플러그인을 설치해야 합니다:
- Google Drive에서 표준 Lip Sync 확장 플러그인을 다운로드하세요
- 다운로드한 아카이브에서 폴더를 추출하여 프로젝트의
Plugins
폴더에 넣으세요 (해당 폴더가 없으면 생성하세요) - 프로젝트가 C++ 프로젝트로 설정되어 있는지 확인하세요 (C++ 코드가 없더라도)
- 프로젝트를 다시 빌드하세요
- 이 확장은 표준 모델을 사용하려는 경우에만 필요합니다. 리얼리스틱 모델만 필요하다면 이 단계를 건너뛸 수 있습니다.
- 플러그인을 수동으로 빌드하는 방법에 대한 자세한 내용은 플러그인 빌드 튜토리얼을 참조하세요
추가 플러그인
- 오디오 캡처 (예: 마이크 입력)를 사용할 계획이라면 Runtime Audio Importer 플러그인을 설치하세요.
- 텍스트 음성 변환 기능을 사용할 계획이라면:
- 로컬 TTS (표준 모델 전용)의 경우 Runtime Text To Speech 플러그인을 설치하세요.
- 외부 TTS 제공업체 (ElevenLabs, OpenAI)의 경우 Runtime AI Chatbot Integrator 플러그인을 설치하세요.
애니메이션 블루프린트 설정
1단계: 얼굴 애니메이션 블루프린트 찾기 및 수정
- UE 5.5 및 이전 버전 (또는 UE 5.6+의 레거시 MetaHumans)
- UE 5.6+ MetaHuman Creator 캐릭터
MetaHuman 캐릭터의 얼굴 애니메이션에 사용될 애니메이션 블루프린트를 수정해야 합니다. 기본 MetaHuman 얼굴 애니메이션 블루프린트는 다음 위치에 있습니다:
Content/MetaHumans/Common/Face/Face_AnimBP
Lip sync 기능을 구현하는 데에는 여러 옵션이 있습니다:
- 기본 애셋 직접 편집 (가장 간단한 옵션)
- 복제본 생성
- 사용자 정의 Animation Blueprint 사용
기본 Face_AnimBP
를 직접 열어 수정합니다. 변경 사항은 이 Animation Blueprint를 사용하는 모든 MetaHuman 캐릭터에 영향을 미칩니다.
참고: 이 접근 방식은 편리하지만 기본 Animation Blueprint를 사용하는 모든 캐릭터에 영향을 미칩니다.
Face_AnimBP
를 복제하고 설명이 포함된 이름을 지정합니다- 캐릭터의 Blueprint 클래스를 찾습니다 (예: "Bryan" 캐릭터의 경우
Content/MetaHumans/Bryan/BP_Bryan
에 위치) - 캐릭터 Blueprint를 열고 Face 컴포넌트를 찾습니다
- Anim Class 속성을 새로 복제한 Animation Blueprint로 변경합니다
참고: 이 접근 방식을 사용하면 다른 캐릭터는 변경하지 않고 특정 캐릭터에 대한 lip sync를 사용자 정의할 수 있습니다.
필요한 얼굴 뼈에 접근할 수 있는 모든 Animation Blueprint에서 lip sync 블렌딩을 구현할 수 있습니다:
- 사용자 정의 Animation Blueprint를 생성하거나 기존 것을 사용합니다
- Animation Blueprint가 기본 MetaHuman의
Face_Archetype_Skeleton
과 동일한 얼굴 뼈를 가진 스켈레톤과 작동하는지 확인합니다
참고: 이 접근 방식은 사용자 정의 애니메이션 시스템과의 통합을 위한 최대 유연성을 제공합니다.
UE 5.6부터 새로운 MetaHuman Creator 시스템이 도입되었습니다. 이러한 캐릭터의 경우 플러그인은 다음 위치에 있는 얼굴 Animation Blueprint를 제공합니다:
Content/LipSyncData/LipSync_Face_AnimBP
이 Animation Blueprint는 플러그인의 콘텐츠 폴더에 위치하며 각 플러그인 업데이트 시 덮어쓰여집니다. 커스터마이징 내용을 잃지 않으려면:
- 이 애셋을 프로젝트의 Content 폴더로 복사하세요 (예:
YourProject/Content/MetaHumans/LipSync_Face_AnimBP
) - 복사한 버전을 캐릭터 설정에서 사용하세요
- 복사한 버전에 모든 수정을 가하세요
플러그인의 얼굴 애니메이션 블루프린트 사용하기:
- MetaHuman Creator 캐릭터의 Blueprint 클래스를 찾으세요
- 캐릭터 Blueprint를 열고 Face 컴포넌트를 찾으세요
- Anim Class 속성을 플러그인의
LipSync_Face_AnimBP
로 변경하세요 - Runtime MetaHuman Lip Sync 기능을 구성하기 위한 다음 단계를 계속 진행하세요
단계 2: 이벤트 그래프 설정
Face Animation Blueprint를 열고 Event Graph
로 전환하세요. 오디오 데이터를 처리하고 립싱크 애니메이션을 생성할 제너레이터를 만들어야 합니다.
- Standard Model
- Realistic Model
- Mood-Enabled Realistic Model
- 아직 존재하지 않는다면
Event Blueprint Begin Play
노드를 추가하세요 Create Runtime Viseme Generator
노드를 추가하고 Begin Play 이벤트에 연결하세요- 출력을 변수로 저장하세요 (예: "VisemeGenerator") 그래프의 다른 부분에서 사용할 수 있도록
자세한 구성 옵션은 Standard Model 구성 섹션을 참조하세요.
- 아직 존재하지 않는다면
Event Blueprint Begin Play
노드를 추가하세요 Create Realistic MetaHuman Lip Sync Generator
노드를 추가하고 Begin Play 이벤트에 연결하세요- 출력을 변수로 저장하세요 (예: "RealisticMetaHumanLipSyncGenerator") 그래프의 다른 부분에서 사용할 수 있도록
- (선택사항) Configuration 매개변수를 사용하여 제너레이터 설정을 구성하세요
모델 유형, 성능 설정 및 처리 매개변수를 포함한 자세한 구성 옵션은 Realistic Model 구성 섹션을 참조하세요.
- 아직 존재하지 않는다면
Event Blueprint Begin Play
노드를 추가하세요 Create Realistic MetaHuman Lip Sync With Mood Generator
노드를 추가하고 Begin Play 이벤트에 연결하세요- 출력을 변수로 저장하세요 (예: "MoodMetaHumanLipSyncGenerator") 그래프의 다른 부분에서 사용할 수 있도록
- (선택사항) Configuration 매개변수를 사용하여 제너레이터 설정을 구성하세요
무드 구성을 포함한 자세한 내용은 mood types, intensity settings, lookahead timing, and output type selection, see the Mood-Enabled Model Configuration section.
Step 3: Anim Graph 설정
Event Graph 설정 후, Anim Graph
로 전환하여 생성기를 캐릭터 애니메이션에 연결하세요:
- Standard Model
- Realistic Model
- Mood-Enabled Realistic Model
- MetaHuman 얼굴을 포함하는 포즈를 찾습니다 (일반적으로
Use cached pose 'Body Pose'
에서) Blend Runtime MetaHuman Lip Sync
노드를 추가합니다- 포즈를
Blend Runtime MetaHuman Lip Sync
노드의Source Pose
에 연결합니다 VisemeGenerator
변수를Viseme Generator
핀에 연결합니다Blend Runtime MetaHuman Lip Sync
노드의 출력을Output Pose
의Result
핀에 연결합니다
- MetaHuman 얼굴을 포함하는 포즈를 찾습니다 (일반적으로
Use cached pose 'Body Pose'
에서) Blend Realistic MetaHuman Lip Sync
노드를 추가합니다- 포즈를
Blend Realistic MetaHuman Lip Sync
노드의Source Pose
에 연결합니다 RealisticMetaHumanLipSyncGenerator
변수를Lip Sync Generator
핀에 연결합니다Blend Realistic MetaHuman Lip Sync
노드의 출력을Output Pose
의Result
핀에 연결합니다
- MetaHuman 얼굴을 포함하는 포즈를 찾습니다 (일반적으로
Use cached pose 'Body Pose'
에서) Blend Realistic MetaHuman Lip Sync
노드를 추가합니다 (일반 리얼리스틱 모델과 동일한 노드)- 포즈를
Blend Realistic MetaHuman Lip Sync
노드의Source Pose
에 연결합니다 MoodMetaHumanLipSyncGenerator
변수를Lip Sync Generator
핀에 연결합니다Blend Realistic MetaHuman Lip Sync
노드의 출력을Output Pose
의Result
핀에 연결합니다
참고: mood-enabled 모델은 일반 리얼리스틱 모델과 동일한 Animation Blueprint 노드를 사용합니다. mood 기능은 생성기 내부에서 처리됩니다.
다음 단계
이제 기본 Animation Blueprint 설정이 완료되었으므로, 음성 데이터를 립 싱크 생성기에 전달하기 위해 오디오 입력 처리를 구성해야 합니다.
다양한 오디오 입력 방법(마이크 캡처, 텍스트-투-스피치, 오디오 파일 처리 포함)을 설정하는 방법을 배우려면 오디오 처리 가이드로 계속 진행하세요. 고급 구성 옵션과 세부 조정을 위해서는 구성 가이드를 참조하세요.