본문으로 건너뛰기

플랫폼별 구성

이 가이드는 Runtime MetaHuman Lip Sync 플러그인의 플랫폼별 설정 요구 사항 및 구성을 다룹니다.

Android / Meta Quest 설정

Android 또는 Meta Quest 플랫폼을 대상으로 하고 이 플러그인에서 빌드 오류가 발생하는 경우, 프로젝트 설정에서 x86_64(x64) Android 아키텍처를 비활성화해야 합니다.

  1. 편집 > 프로젝트 설정으로 이동
  2. 플랫폼 > Android로 이동
  3. 플랫폼 - Android빌드 섹션에서 x86_64 [x64] 지원을 찾아 비활성화되어 있는지 확인합니다. 아래 그림과 같습니다.

Disable x64 Android Architecture

이는 현재 플러그인이 Android / Meta Quest 플랫폼에서 arm64-v8a 및 armeabi-v7a 아키텍처만 지원하기 때문입니다.

Android 및 iOS 크래시

일부 Android 및 iOS 환경에서는 런타임 중(예: TestFlight 테스트 중) 충돌이 발생할 수 있습니다. 이는 기본 ONNX Runtime 라이브러리의 메모리 할당 요구 사항이 해당 플랫폼에서 Unreal Engine의 기본 할당자와 충돌하기 때문에 발생합니다.

이 문제를 해결하려면 프로젝트의 Target.cs 파일에서 ANSI 할당자를 강제로 적용해야 합니다:

언리얼 엔진 5.5 및 이전 버전:

  • 프로젝트는 소스 빌드 엔진(사전 컴파일된 바이너리가 아닌)을 사용해야 합니다.
  • Target.cs 파일에 다음 줄을 추가하세요:
GlobalDefinitions.Add("FORCE_ANSI_ALLOCATOR=1");

Unreal Engine 5.6 이상 버전:

  • 소스 빌드 및 사전 컴파일된 엔진 빌드 모두에서 작동합니다
  • Target.cs 파일에 다음 두 줄을 추가하세요:
bOverrideBuildEnvironment = true;
StaticAllocator = StaticAllocatorType.Ansi;

이로 인해 Unreal Engine이 Android 및 iOS에서 ANSI 할당자를 사용하도록 강제되며, 이는 ONNX Runtime에서 사용하는 할당자와 일치합니다.

Mac / Linux 설정 (UE 5.6+)

NNERuntimeORT 플러그인 충돌

Mac 또는 Linux 플랫폼에서 Unreal Engine 5.6 이상을 사용 중이며 Realistic Lip Sync Models를 사용할 계획이라면, 플러그인 충돌로 인해 사실적인 모델이 제대로 작동하지 않는 문제가 발생합니다.

문제

UE 5.6부터 엔진에는 NNERuntimeORT 플러그인이 포함되어 있으며, 이 플러그인은 Mac 및 Linux 플랫폼에서 Runtime MetaHuman Lip Sync 플러그인의 사실적인 모델과 충돌합니다. 이 충돌로 인해 사실적인 립 싱크 기능이 제대로 초기화되지 않습니다.

해결책

이 충돌을 해결하려면 플러그인 설정 파일을 수정해야 합니다:

  1. Unreal Engine 설치 폴더로 이동하세요
  2. Engine/Plugins/Marketplace/로 이동하세요
  3. RuntimeMetaHumanLipSync 플러그인 폴더를 찾으세요
  4. 텍스트 편집기에서 RuntimeMetaHumanLipSync.uplugin 파일을 여세요
  5. 다음 섹션을 완전히 제거하세요:
,
"Plugins": [
{
"Name": "NNERuntimeORT",
"Enabled": true
}
]

중요 참고 사항

  • 이 수정 사항은 Mac 및 Linux 플랫폼에만 영향을 미칩니다. Windows 사용자는 이 변경을 할 필요가 없습니다.
  • 이 수정은 UE 5.6 이상에서만 필요합니다. 이전 엔진 버전에는 영향을 미치지 않습니다.
  • 플러그인을 업데이트하면 원래 구성 파일이 복원되므로 이 과정을 반복해야 할 수 있습니다.