본문으로 건너뛰기

개요

Runtime MetaHuman Lip Sync Documentation

Runtime MetaHuman Lip Sync는 MetaHuman과 사용자 정의 캐릭터 모두에 대해 실시간, 오프라인, 크로스 플랫폼 립 싱크를 가능하게 하는 플러그인입니다. 이를 통해 다음과 같은 다양한 소스의 오디오 입력에 반응하여 캐릭터의 입술을 애니메이션할 수 있습니다:

이 플러그인은 오디오 입력을 기반으로 내부적으로 viseme(음소의 시각적 표현)을 생성합니다. 텍스트가 아닌 오디오 데이터를 직접 처리하기 때문에, 이 플러그인은 영어, 스페인어, 프랑스어, 독일어, 일본어, 중국어, 한국어, 러시아어, 이탈리아어, 포르투갈어, 아랍어, 힌디어를 포함하되 이에 국한되지 않는 다국어 입력을 지원합니다. 립 싱크가 언어별 텍스트 처리가 아닌 오디오 음소로부터 생성되므로 사실상 모든 언어가 지원됩니다.

Standard Model은 14개의 viseme을 생성하고 미리 정의된 포즈 에셋을 사용하여 립 싱크 애니메이션을 수행합니다. 반면, Realistic Models(MetaHuman 및 ARKit 기반 캐릭터 전용)은 미리 정의된 포즈 에셋에 의존하지 않고 81개의 얼굴 컨트롤 변경을 생성하여 훨씬 더 사실적인 얼굴 애니메이션을 구현합니다.

캐릭터 호환성​

이름과 달리, Runtime MetaHuman Lip Sync는 MetaHuman뿐만 아니라 다양한 캐릭터와 함께 작동합니다:

  • Daz Genesis 8/9 캐릭터
  • Reallusion Character Creator 3/4/5 (CC3/CC4/CC5) 캐릭터
  • Mixamo 캐릭터

애니메이션 표준 지원​

  • FACS 기반 블렌드셰이프 시스템
  • Apple ARKit 블렌드셰이프 표준
  • Preston Blair 음소 세트
  • 3ds Max 음소 시스템
  • 얼굴 표정용 커스텀 모프 타깃이 있는 모든 캐릭터

Reallusion CC4/CC5 및 Daz Genesis 8.1/9를 포함한 많은 인기 시스템도 ARKit 표준 blendshape 이름을 사용하도록 변환할 수 있습니다. 이를 통해 이러한 캐릭터에 Realistic Model을 사용하여 Standard Model의 수동 viseme 매핑 대신 더 높은 품질의 얼굴 애니메이션을 활용할 수 있습니다. 자세한 내용은 캐릭터를 ARKit Blendshape로 변환하기를 참조하세요.

Standard Model을 사용하는 MetaHuman이 아닌 캐릭터의 경우 사용자 지정 캐릭터 설정 가이드를 참조하세요. Realistic Models을 사용하는 ARKit 기반 캐릭터의 경우 Morph Target 세트 선택을 참조하세요.

애니메이션 미리보기​

다양한 캐릭터 유형과 모델에서 플러그인이 생성하는 립 싱크 애니메이션의 품질을 확인하려면 다음 짧은 애니메이션들을 확인해 보세요:

MetaHuman 캐릭터를 사용한 사실적인 모델
MetaHuman 캐릭터가 있는 Standard 모델
커스텀 캐릭터가 적용된 Standard 모델
사용자 지정 캐릭터가 있는 표준 모델

주요 기능​

립 싱크 모델​

플러그인은 다양한 프로젝트 요구에 맞는 여러 립 싱크 모델을 제공합니다:

표준 립 싱크 모델은 폭넓은 캐릭터 호환성과 함께 효율적이고 크로스 플랫폼 성능을 제공합니다:

  • MetaHuman 및 모든 커스텀 캐릭터 유형과 호환됩니다
  • 실시간 성능에 최적화됨
  • 더 낮은 리소스 요구 사항
  • 플랫폼 지원: Windows, Android, Android 기반 플랫폼(Meta Quest 포함)
확장 플러그인 필요

Standard Model을 사용하려면 추가 확장 플러그인을 설치해야 합니다. 설치 방법은 사전 요구 사항 섹션을 참조하세요.

프로젝트 요구 사항에 따라 성능, 캐릭터 호환성, 시각적 품질, 대상 플랫폼 및 기능 요구에 적합한 모델을 선택할 수 있습니다.

작동 방식​

플러그인은 다음과 같은 방식으로 오디오 입력을 처리합니다:

  1. 오디오 데이터는 지정된 채널과 샘플 레이트를 가진 float PCM 형식으로 수신됩니다
  2. 플러그인은 모델에 따라 오디오를 처리하여 얼굴 제어 데이터 또는 viseme을 생성합니다
  3. 무드 지원 모델의 경우, 감정적 맥락이 얼굴 애니메이션에 적용됩니다
  4. 애니메이션 데이터는 실시간으로 캐릭터의 얼굴 움직임을 구동합니다

성능 아키텍처​

Runtime MetaHuman Lip Sync는 CPU 전용 추론을 사용하여 실시간 애플리케이션에 적합한 일관되고 지연이 낮은 립 싱크 결과를 제공합니다. 기본적으로 플러그인은 10밀리초마다 립 싱크 처리를 수행합니다(처리 청크 크기, 스레드 수 및 기타 성능 매개변수를 포함한 모든 사용 가능한 설정은 플러그인 구성을 참조하세요).

모델 아키텍처 개요​

립 싱크 모델은 멜 스펙트로그램 분석을 통해 오디오를 처리하는 소형 트랜스포머 기반 신경망을 사용합니다. 이 경량 아키텍처는 효율적인 CPU 추론과 최소한의 메모리 사용량으로 실시간 성능을 위해 특별히 설계되었습니다.

CPU 추론을 사용하는 이유는 무엇인가요?​

실시간 립 싱크와 같이 작고 빈번한 추론 작업의 경우, CPU 처리가 GPU보다 더 나은 지연 시간 특성을 제공합니다. 배치 크기 1에서 10-100ms 추론 간격으로 실행할 때, PCIe 전송과 커널 실행으로 인한 GPU 오버헤드는 종종 실제 연산 시간을 초과합니다. 또한 게임 엔진에서는 GPU가 이미 렌더링, 셰이더, 물리 연산으로 포화 상태에 있어 리소스 경합이 발생하고 이로 인해 예측할 수 없는 지연 시간 스파이크가 생깁니다.

하드웨어 호환성​

이 플러그인은 전용 그래픽 하드웨어 없이도 대부분의 중급 이상 CPU에서 효율적으로 작동하며, 데스크톱, 모바일, VR 플랫폼 전반에서 실시간 성능을 제공합니다. 성능이 낮은 하드웨어의 경우 Model Type을 Semi-Optimized 또는 Highly Optimized로 조정하거나 **Processing Chunk Size**를 늘려 응답성이 약간 저하되는 대신 실시간 성능을 유지할 수 있습니다.

빠른 시작​

다음은 캐릭터에서 립 싱크를 활성화하기 위한 기본 설정입니다:

  1. MetaHuman 캐릭터의 경우 설정 가이드를 따르세요
  2. 커스텀 캐릭터의 경우 커스텀 캐릭터 설정 가이드를 따르세요
  3. 원하는 립 싱크 모델을 선택하고 구성하세요
  4. Blueprint에서 오디오 입력 처리를 설정하세요
  5. Animation Blueprint에서 적절한 립 싱크 노드를 연결하세요
  6. 오디오를 재생하고 캐릭터가 동기화되어 애니메이션되는 모습을 확인하세요

선택적 눈 애니메이션​

이 플러그인은 MetaHuman의 자동 깜빡임 및 시선 추적을 위한 선택적 헬퍼도 포함합니다. 이들은 립 싱크와 독립적이며 단독으로 사용하거나 그 위에 레이어로 적용할 수 있습니다. 눈 애니메이션 헬퍼를 참조하세요.

추가 리소스​

📦 다운로드 및 링크​

데모 프로젝트:

사용 준비가 완료된 두 개의 데모 프로젝트가 있습니다. 전체 세부 정보, 다운로드 및 워크스루는 전용 데모 프로젝트 페이지를 참조하세요:

두 데모 모두 크로스 플랫폼(Windows, Mac, Linux, iOS, Android, Meta Quest)이며 패키지 빌드와 전체 UE 5.6+ 소스 프로젝트로 제공됩니다.

🎥 비디오 튜토리얼​

주요 데모:​

사실적인 모델 (고품질) 튜토리얼:​

표준 모델 튜토리얼:​

일반 설정:​

💬 지원​

Join our Discord
online · support