플러그인 사용 방법
이 가이드는 MetaHuman 캐릭터에 Runtime MetaHuman Lip Sync를 설정하는 과정을 안내합니다.
참고: Runtime MetaHuman Lip Sync는 MetaHuman과 커스텀 캐릭터 모두와 호환됩니다. 이 플러그인은 다음과 같은 다양한 캐릭터 유형을 지원합니다:
- 인기 있는 상용 캐릭터 (Daz Genesis 8/9, Reallusion CC3/CC4, Mixamo, ReadyPlayerMe 등)
- FACS 기반 블렌드쉐이프를 가진 캐릭터
- ARKit 블렌드쉐이프 표준을 사용하는 모델
- Preston Blair 포네임 세트를 가진 캐릭터
- 3ds Max 포네임 시스템
- 얼굴 표정을 위한 커스텀 모프 타겟이 있는 모든 캐릭터
위의 모든 표준에 대한 비젬 매핑 참조를 포함한 커스텀 캐릭터 설정에 대한 자세한 지침은 커스텀 캐릭터 설정 가이드를 참조하세요.
필수 조건
시작하기 전에 다음 사항을 확인하세요:
- 프로젝트에서 MetaHuman 플러그인이 활성화되어 있어야 합니다 (참고: UE 5.6부터는 이 단계가 더 이상 필요하지 않으며 MetaHuman 기능이 엔진에 직접 통합됨)
- 프로젝트에 최소 하나 이상의 MetaHuman 캐릭터가 다운로드되어 있어야 합니다
- Runtime MetaHuman Lip Sync 플러그인이 설치되어 있어야 합니다
추가 플러그인:
- 오디오 캡처 (예: 마이크 입력)를 사용할 계획이라면 Runtime Audio Importer 플러그인을 설치하세요.
- 텍스트 음성 변환 기능을 사용할 계획이라면 Runtime Text To Speech 플러그인을 설치하세요.
플랫폼별 구성
Android / Meta Quest 구성
Android 또는 Meta Quest 플랫폼을 타겟팅하고 이 플러그인과 관련된 빌드 오류가 발생하는 경우, 프로젝트 설정에서 x86_64 (x64) Android 아키텍처를 비활성화해야 합니다:
- 편집 > 프로젝트 설정으로 이동합니다
- 플랫폼 > Android로 이동합니다
- 플랫폼 - Android, 빌드 섹션에서 x86_64 [aka x64] 지원을 찾아 비활성화되어 있는지 확인합니다, 아래와 같이
이는 현재 플러그인이 Android / Meta Quest 플랫폼에 대해 arm64-v8a 및 armeabi-v7a 아키텍처만 지원하기 때문입니다.
설정 과정
단계 1: 얼굴 애니메이션 Blueprint 찾기 및 수정
- UE 5.5 및 이전 버전 (또는 UE 5.6+의 레거시 MetaHumans)
- UE 5.6+ MetaHuman Creator 캐릭터
MetaHuman 캐릭터의 얼굴 애니메이션에 사용될 Animation Blueprint를 수정해야 합니다. 기본 MetaHuman 얼굴 Animation Blueprint는 다음 위치에 있습니다:
Content/MetaHumans/Common/Face/Face_AnimBP
립 싱크 기능을 구현하기 위한 몇 가지 옵션이 있습니다:
- 기본 애셋 직접 수정 (가장 간단한 옵션)
- 복제본 생성
- 커스텀 Animation Blueprint 사용
기본 Face_AnimBP
를 직접 열어 수정합니다. 모든 변경 사항은 이 Animation Blueprint를 사용하는 모든 MetaHuman 캐릭터에 영향을 미칩니다.
참고: 이 접근 방식은 편리하지만 기본 Animation Blueprint를 사용하는 모든 캐릭터에 영향을 줍니다.
Face_AnimBP
를 복제하고 설명이 포함된 이름을 지정합니다- 캐릭터의 Blueprint 클래스를 찾습니다 (예: "Bryan" 캐릭터의 경우
Content/MetaHumans/Bryan/BP_Bryan
에 위치) - 캐릭터 Blueprint를 열고 Face 컴포넌트를 찾습니다
- Anim Class 속성을 새로 복제한 Animation Blueprint로 변경합니다
참고: 이 접근 방식을 사용하면 특정 캐릭터에 대해 립 싱크를 커스터마이징하면서 다른 캐릭터는 변경하지 않을 수 있습니다.
필요한 얼굴 뼈대에 접근할 수 있는 모든 Animation Blueprint에서 립 싱크 블렌딩을 구현할 수 있습니다:
- 커스텀 Animation Blueprint를 생성하거나 기존 것을 사용합니다
- Animation Blueprint가 기본 MetaHuman의
Face_Archetype_Skeleton
(모든 MetaHuman 캐릭터에 사용되는 표준 스켈레톤)과 동일한 얼굴 뼈대를 가진 스켈레톤과 작동하는지 확인합니다
참고: 이 접근 방식은 커스텀 애니메이션 시스템과의 통합을 위한 최대 유연성을 제공합니다.
UE 5.6부터 기존의 Face_AnimBP
애셋 없이 캐릭터를 생성하는 새로운 MetaHuman Creator 시스템이 도입되었습니다. 이러한 캐릭터의 경우 플러그인은 다음 위치에 페이스 Animation Blueprint를 제공합니다:
Content/LipSyncData/LipSync_Face_AnimBP
플러그인의 Face Animation Blueprint 사용 방법:
- MetaHuman Creator 캐릭터의 Blueprint 클래스를 찾습니다
- 캐릭터 Blueprint를 열고 Face 컴포넌트를 찾습니다
- Anim Class 속성을 플러그인의
LipSync_Face_AnimBP
로 변경합니다 - Runtime MetaHuman Lip Sync 기능을 구성하기 위해 2-4단계를 계속 진행합니다
대체 옵션:
- 레거시 지침 사용: 레거시 MetaHumans로 작업 중이거나 기존 워크플로우를 선호하는 경우 위의 UE 5.5 지침을 계속 따라할 수 있습니다
- 커스텀 Animation Blueprint 생성: MetaHuman Creator 스켈레톤 구조와 호환되는 자신만의 Animation Blueprint를 생성합니다
참고: UE 5.6+를 사용 중이지만 MetaHuman Creator를 통해 생성되지 않은 레거시 MetaHumans로 작업하는 경우 "UE 5.5 및 이전 버전" 탭의 지침을 대신 사용하십시오.
중요: Runtime MetaHuman Lip Sync 블렌딩은 기본 MetaHuman의 Face_Archetype_Skeleton
에 있는 얼굴 뼈를 포함하는 포즈에 액세스할 수 있는 모든 Animation Blueprint 자산에서 구현할 수 있습니다. 위의 옵션으로 제한되지 않습니다 - 이들은 단지 일반적인 구현 접근 방식일 뿐입니다.
2단계: 이벤트 그래프 설정
Face Animation Blueprint를 열고 Event Graph
로 전환합니다. 오디오 데이터를 처리하고 립 싱크 애니메이션을 생성할 생성기를 만들어야 합니다.
- Standard (Faster) Model
- Realistic (Higher Quality) Model
- 아직 존재하지 않는 경우
Event Blueprint Begin Play
노드를 추가합니다 Create Runtime Viseme Generator
노드를 추가하고 Begin Play 이벤트에 연결합니다- 출력을 변수(예: "VisemeGenerator")로 저장하여 그래프의 다른 부분에서 사용합니다
- 아직 존재하지 않는 경우
Event Blueprint Begin Play
노드를 추가합니다 Create Realistic MetaHuman Lip Sync Generator
노드를 추가하고 Begin Play 이벤트에 연결합니다- 출력을 변수(예: "RealisticLipSyncGenerator")로 저장하여 그래프의 다른 부분에서 사용합니다
참고: Realistic Model은 MetaHuman 캐릭터에 맞게 특별히 최적화되었으며 커스텀 캐릭터 유형과는 호환되지 않습니다.
Realistic Model과의 안정적이고 일관된 작동을 위해, ONNX 런타임 동작으로 인해 오랫동안 비활성 상태 후 새로운 오디오 데이터를 입력하려는 경우 반드시 Realistic MetaHuman Lip Sync Generator를 다시 생성해야 합니다. 이는 침묵 기간 후 생성기를 재사용할 때 립 싱크가 작동을 멈출 수 있기 때문입니다.
예시 시나리오: TTS 립 싱크를 수행한 후 중지했다가 나중에 새로운 오디오로 다시 립 싱크를 수행하려는 경우, 기존 생성기를 재사용하는 대신 새로운 Realistic MetaHuman Lip Sync Generator를 생성하십시오.
3단계: 오디오 입력 처리 설정
오디오 소스에 따라 오디오 입력을 처리할 방법을 설정해야 합니다.
- 마이크 (실시간)
- 마이크 (재생)
- 텍스트 음성 변환 (로컬)
- 텍스트 음성 변환 (외부 API)
- 오디오 파일/버퍼에서
- 커스텀 오디오 소스
이 접근 방식은 마이크에 말하는 동안 실시간으로 립 싱크를 수행합니다:
- Standard (Faster) Model
- Realistic (Higher Quality) Model
- Runtime Audio Importer를 사용하여 Capturable Sound Wave 생성
- 오디오 캡처를 시작하기 전에
OnPopulateAudioData
델리게이트에 바인딩 - 바인딩된 함수에서 Runtime Viseme Generator의
ProcessAudioData
호출 - 마이크에서 오디오 캡처 시작
Realistic Model은 Standard Model과 동일한 오디오 처리 워크플로우를 사용하지만, VisemeGenerator
대신 RealisticLipSyncGenerator
변수를 사용합니다.
Standard Model에 표시된 각 예제에서 다음을 대체하십시오:
VisemeGenerator
를RealisticLipSyncGenerator
변수로- 함수 이름과 매개변수는 두 모델 간에 동일하게 유지됩니다
이 접근 방식은 마이크에서 오디오를 캡처한 다음 립 싱크와 함께 재생합니다:
- Standard (Faster) Model
- Realistic (Higher Quality) Model
- Runtime Audio Importer를 사용하여 Capturable Sound Wave 생성
- 마이크에서 오디오 캡처 시작
- 캡처 가능한 사운드 웨이브를 재생하기 전에
OnGeneratePCMData
델리 게이트에 바인딩 - 바인딩된 함수에서 Runtime Viseme Generator의
ProcessAudioData
호출
Realistic Model은 Standard Model과 동일한 오디오 처리 워크플로우를 사용하지만, VisemeGenerator
대신 RealisticLipSyncGenerator
변수를 사용합니다.
Standard Model에 표시된 각 예제에서 다음을 대체하십시오:
VisemeGenerator
를RealisticLipSyncGenerator
변수로- 함수 이름과 매개변수는 두 모델 간에 동일하게 유지됩니다
참고: 더 반응성이 좋은 립 싱크를 위해 더 작은 청크로 오디오 데이터를 처리하려면 SetNumSamplesPerChunk
함수의 계산을 조정하십시오. 예를 들어, 샘플 레이트를 100(10ms마다 스트리밍) 대신 150(~6.67ms마다 스트리밍)으로 나누면 더 빈번한 립 싱크 업데이트가 제공됩니다.
- 일반
- 스트리밍
이 접근 방식은 텍스트에서 음성을 합성하고 립 싱크를 수행합니다:
- Standard (Faster) Model
- Realistic (Higher Quality) Model
- Runtime Text To Speech를 사용하여 텍스트에서 음성 생성
- Runtime Audio Importer를 사용하여 합성된 오디오 가져오기
- 가져온 사운드 웨이브를 재생하기 전에
OnGeneratePCMData
델리게이트에 바인딩 - 바인딩된 함수에서 Runtime Viseme Generator의
ProcessAudioData
호출
Runtime Text To Speech 플러그인에서 제공하는 로컬 TTS는 ONNX 런타임 충돌로 인해 현재 Realistic 모델과 호환되지 않습니다. Realistic 모델과 함께 텍스트 음성 변환을 사용하려면 외부 TTS 서비스(예: Runtime AI Chatbot Integrator를 통한 OpenAI 또는 ElevenLabs)를 사용하거나 Standard 모델을 대신 사용하십시오.
참고: 더 반응성이 좋은 립 싱크를 위해 더 작은 청크로 오디오 데이터를 처리하려면 SetNumSamplesPerChunk
함수의 계산을 조정하십시오. 예를 들어, 샘플 레이트를 100(10ms마다 스트리밍) 대신 150(~6.67ms마다 스트리밍)으로 나누면 더 빈번한 립 싱크 업데이트가 제공됩니다.
이 접근 방식은 텍스트에서 스트리밍 음성 합성을 사용하여 실시간 립 싱크를 수행합니다:
- Standard (Faster) Model
- Realistic (Higher Quality) Model
- Runtime Text To Speech를 사용하여 텍스트에서 스트리밍 음성 생성
- Runtime Audio Importer를 사용하여 합성된 오디오 가져오기
- 스트리밍 사운드 웨이브를 재생하기 전에
OnGeneratePCMData
델리게이트에 바인딩 - 바인딩된 함수에서 Runtime Viseme Generator의
ProcessAudioData
호출
Runtime Text To Speech 플러그인에서 제공하는 로컬 TTS는 ONNX 런타임 충돌로 인해 현재 Realistic 모델과 호환되지 않습니다. Realistic 모델과 함께 텍스트 음성 변환을 사용하려면 외부 TTS 서비스(예: Runtime AI Chatbot Integrator를 통한 OpenAI 또는 ElevenLabs)를 사용하거나 Standard 모델을 대신 사용하십시오.
참고: 더 반응성이 좋은 립 싱크를 위해 더 작은 청크로 오디오 데이터를 처리하려면 SetNumSamplesPerChunk
함수의 계산을 조정하십시오. 예를 들어, 샘플 레이트를 100(10ms마다 스트리밍) 대신 150(~6.67ms마다 스트리밍)으로 나누면 더 빈번한 립 싱크 업데이트가 제공됩니다.
- 일반
- 스트리밍
이 접근 방식은 Runtime AI Chatbot Integrator 플러그인을 사용하여 AI 서비스(OpenAI 또는 ElevenLabs)에서 합성된 음성을 생성하고 립 싱크를 수행합니다:
- Standard (Faster) Model
- Realistic (Higher Quality) Model
- Runtime AI Chatbot Integrator를 사용하여 외부 API(OpenAI, ElevenLabs 등)에서 텍스트 음성 변환 수행
- Runtime Audio Importer를 사용하여 합성된 오디오 데이터 가져오기
- 가져온 사운드 웨이브를 재생하기 전에
OnGeneratePCMData
델리게이트에 바인딩 - 바인딩된 함수에서 Runtime Viseme Generator의
ProcessAudioData
호출
Realistic Model은 Standard Model과 동일한 오디오 처리 워크플로우를 사용하지만, VisemeGenerator
대신 RealisticLipSyncGenerator
변수를 사용합니다.
Standard Model에 표시된 각 예제에서 다음을 대체하십시오:
VisemeGenerator
를RealisticLipSyncGenerator
변수로- 함수 이름과 매개변수는 두 모델 간에 동일하게 유지됩니다
참고: 더 반응성이 좋은 립 싱크를 위해 더 작은 청크로 오디오 데이터를 처리하려면 SetNumSamplesPerChunk
함수의 계산을 조정하십시오. 예를 들어, 샘플 레이트를 100(10ms마다 스트리밍) 대신 150(~6.67ms마다 스트리밍)으로 나누면 더 빈번한 립 싱크 업데이트가 제공됩니다.
이 접근 방식은 Runtime AI Chatbot Integrator 플러그인을 사용하여 AI 서비스(OpenAI 또는 ElevenLabs)에서 합성된 스트리밍 음성을 생성하고 립 싱크를 수행합니다:
- Standard (Faster) Model
- Realistic (Higher Quality) Model
- Runtime AI Chatbot Integrator를 사용하여 스트리밍 TTS API(예: ElevenLabs Streaming API)에 연결
- Runtime Audio Importer를 사용하여 합성된 오디오 데이터 가져오기
- 스트리밍 사운드 웨이브를 재생하기 전에
OnGeneratePCMData
델리게이트에 바인딩 - 바인딩된 함수에서 Runtime Viseme Generator의
ProcessAudioData
호출
Realistic Model은 Standard Model과 동일한 오디오 처리 워크플로우를 사용하지만, VisemeGenerator
대신 RealisticLipSyncGenerator
변수를 사용합니다.
Standard Model에 표시된 각 예제에서 다음을 대체하십시오:
VisemeGenerator
를RealisticLipSyncGenerator
변수로- 함수 이름과 매개변수는 두 모델 간에 동일하게 유지됩니다
참고: 더 반응성이 좋은 립 싱크를 위해 더 작은 청크로 오디오 데이터를 처리하려면 SetNumSamplesPerChunk
함수의 계산을 조정하십시오. 예를 들어, 샘플 레이트를 100(10ms마다 스트리밍) 대신 150(~6.67ms마다 스트리밍)으로 나누면 더 빈번한 립 싱크 업데이트가 제공됩니다.
이 접근 방식은 사전 녹음된 오디오 파일 또는 오디오 버퍼를 사용하여 립 싱크를 수행합니다:
- Standard (Faster) Model
- Realistic (Higher Quality) Model
- Runtime Audio Importer를 사용하여 디스크 또는 메모리에서 오디오 파일 가져오기
- 가져온 사운드 웨이브를 재생하기 전에
OnGeneratePCMData
델리게이트에 바인딩 - 바인딩된 함수에서 Runtime Viseme Generator의
ProcessAudioData
호출 - 가져온 사운드 웨이브를 재생하고 립 싱크 애니메이션 관찰
Realistic Model은 Standard Model과 동일한 오디오 처리 워크플로우를 사용하지만, VisemeGenerator
대신 RealisticLipSyncGenerator
변수를 사용합니다.
Standard Model에 표시된 각 예제에서 다음을 대체하십시오:
VisemeGenerator
를RealisticLipSyncGenerator
변수로- 함수 이름과 매개변수는 두 모델 간에 동일하게 유지됩니다
참고: 더 반응성이 좋은 립 싱크를 위해 더 작은 청크로 오디오 데이터를 처리하려면 SetNumSamplesPerChunk
함수의 계산을 조정하십시오. 예를 들어, 샘플 레이트를 100(10ms마다 스트리밍) 대신 150(~6.67ms마다 스트리밍)으로 나누면 더 빈번한 립 싱크 업데이트가 제공됩니다.
커스텀 오디오 소스의 경우 다음이 필요합니다:
- Standard (Faster) Model
- Realistic (Higher Quality) Model
- float PCM 형식의 오디오 데이터(부동 소수점 샘플 배열)
- 샘플 레이트 및 채널 수
- Runtime Viseme Generator의
ProcessAudioData
를 이러한 매개변수와 함께 호출
커스텀 소스에서 오디오를 스트리밍하는 예시:
Realistic Model은 Standard Model과 동일한 오디오 처리 워크플로우를 사용하지만, VisemeGenerator
대신 RealisticLipSyncGenerator
변수를 사용합니다.
Standard Model에 표시된 각 예제에서 다음을 대체하십시오:
VisemeGenerator
를RealisticLipSyncGenerator
변수로- 함수 이름과 매개변수는 두 모델 간에 동일하게 유지됩니다
참고: 더 반응성이 좋은 립 싱크를 위해 더 작은 청크로 오디오 데이터를 처리하려면 SetNumSamplesPerChunk
함수의 계산을 조정하십시오. 예를 들어, 샘플 레이트를 100(10ms마다 스트리밍) 대신 150(~6.67ms마다 스트리밍)으로 나누면 더 빈번한 립 싱크 업데이트가 제공됩니다.
4단계: 애님 그래프 설정
이벤트 그래프 설정 후 Anim Graph
로 전환하여 생성기를 캐릭터 애니메이션에 연결합니다:
립 싱크
- Standard (Faster) Model
- Realistic (Higher Quality) Model
- MetaHuman 얼굴을 포함하는 포즈를 찾습니다(일반적으로
Use cached pose 'Body Pose'
에서) Blend Runtime MetaHuman Lip Sync
노드 추가- 포즈를
Blend Runtime MetaHuman Lip Sync
노드의Source Pose
에 연결 RuntimeVisemeGenerator
변수를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
에 연결 RealisticLipSyncGenerator
변수를Lip Sync Generator
핀에 연결Blend Realistic MetaHuman Lip Sync
노드의 출력을Output Pose
의Result
핀에 연결
Realistic Model은 더 자연스러운 입 움직임으로 향상된 시각적 품질을 제공합니다:
참고: Realistic Model은 MetaHuman 캐릭터 전용으로 설계되었으며 커스텀 캐릭터 유형과는 호환되지 않습니다.
웃음 애니메이션
오디오에서 감지된 웃음에 동적으로 반응하는 웃음 애니메이션을 추가할 수도 있습니다:
Blend Runtime MetaHuman Laughter
노드 추가RuntimeVisemeGenerator
변수를Viseme Generator
핀에 연결- 이미 립 싱크를 사용 중인 경우:
Blend Runtime MetaHuman Lip Sync
노드의 출력을Blend Runtime MetaHuman Laughter
노드의Source Pose
에 연결Blend Runtime MetaHuman Laughter
노드의 출력을Output Pose
의Result
핀에 연결
- 립 싱크 없이 웃음만 사용하는 경우:
- 소스 포즈를 직접
Blend Runtime MetaHuman Laughter
노드의Source Pose
에 연결 - 출력을
Result
핀에 연결
- 소스 포즈를 직접
오디오에서 웃음이 감지되면 캐릭터가 동적으로 애니메이션됩니다:
바디 애니메이션과 결합
기존 바디 애니메이션을 재정의하지 않고 립 싱크와 웃음을 적용하려면:
- 바디 애니메이션과 최종 출력 사이에
Layered blend per bone
노드 추가.Use Attached Parent
가 true인지 확인합니다. - 레이어 설정 구성:
Layer Setup
배열에 1 항목 추가- 레이어에 대해
Branch Filters
에 다음Bone Name
으로 3 항목 추가:FACIAL_C_FacialRoot
FACIAL_C_Neck2Root
FACIAL_C_Neck1Root
- 연결 생성:
- 기존 애니메이션(예:
BodyPose
) →Base Pose
입력 - 얼굴 애니메이션 출력(립 싱크 및/또는 웃음 노드에서) →
Blend Poses 0
입력 - Layered blend 노드 → 최종
Result
포즈
- 기존 애니메이션(예:
이유: 분기 필터는 얼굴 애니메이션 뼈를 분리하여 립 싱크와 웃음이 원본 바디 애니메이션을 유지하면서 얼굴 움직임과만 블렌딩되도록 합니다. 이는 MetaHuman 얼굴 리그 구조와 일치하여 자연스러운 통합을 보장합니다.
참고: 립 싱크와 웃음 기능은 기존 애니메이션 설정과 비파괴적으로 작동하도록 설계되었습니다. 이들은 입 움직임에 필요한 특정 얼굴 뼈에만 영향을 미치며 다른 얼굴 애니메이션은 그대로 유지합니다. 이는 애니메이션 체인의 어느 지점에서든 안전하게 통합할 수 있음을 의미합니다 - 다른 얼굴 애니메이션 전(해당 애니메이션이 립 싱크/웃음을 재정의하도록 허용) 또는 후(립 싱크/웃음이 기존 애니메이션 위에 블렌딩되도록)에 통합할 수 있습니다. 이러한 유연성을 통해 립 싱크와 웃음을 눈 깜빡임, 눈썹 움직임, 감정 표현 및 기타 얼굴 애니메이션과 충돌 없이 결합할 수 있습니다.
구성
립 싱크 구성
- Standard (Faster) Model
- Realistic (Higher Quality) Model
Blend Runtime MetaHuman Lip Sync
노드에는 속성 패널에 구성 옵션이 있습니다:
속성 | 기본값 | 설명 |
---|---|---|
Interpolation Speed | 25 | 비시엠 간 입 움직임 전환 속도를 제어합니다. 값이 높을수록 더 빠르고 급격한 전환이 발생합니다. |
Reset Time | 0.2 | 오디오가 중지된 후 립 싱크가 재설정되는 시간(초)입니다. 이는 오디오가 중지된 후에도 립 싱크가 계속되는 것을 방지하는 데 유용합니다. |
Blend Realistic MetaHuman Lip Sync
노드에는 속성 패널에 구성 옵션이 있습니다:
속성 | 기본값 | 설명 |
---|---|---|
Interpolation Speed | 30 | 입 움직임 간 전환 속도를 제어합니다. 값이 높을수록 더 빠르고 급격한 전환이 발생합니다. |
Reset Time | 0.2 | 오디오가 중지된 후 립 싱크가 재설정되는 시간(초)입니다. 이는 오디오가 중지된 후에도 립 싱크가 계속되는 것을 방지하는 데 유용합니다. |
웃음 구성
Blend Runtime MetaHuman Laughter
노드에는 자체 구성 옵션이 있습니다:
속성 | 기본값 | 설명 |
---|---|---|
Interpolation Speed | 25 | 웃음 애니메이션 간 전환 속도를 제어합니다. 값이 높을수록 더 빠르고 급격한 전환이 발생합니다. |
Reset Time | 0.2 | 오디오가 중지된 후 웃음이 재설정되는 시간(초)입니다. 이는 오디오가 중지된 후에도 웃음이 계속되는 것을 방지하는 데 유용합니다. |
Max Laughter Weight | 0.7 | 웃음 애니메이션의 최대 강도를 조정합니다(0.0 - 1.0). |
립 싱크 모델 선택
프로젝트에 사용할 립 싱크 모델을 선택할 때 다음 요소를 고려하십시오:
고려 사항 | Standard Model | Realistic Model |
---|---|---|
캐릭터 호환성 | MetaHumans 및 모든 커스텀 캐릭터 유형 | MetaHumans 전용 |
시각적 품질 | 효율적인 성능과 함께 좋은 립 싱크 | 더 자연스러운 입 |