본문으로 건너뛰기

플랫폼별 구성

이 가이드는 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 이상에서만 필요합니다. 이전 엔진 버전에는 영향을 미치지 않습니다.
  • 플러그인을 업데이트하면 원래 구성 파일이 복원되므로 이 과정을 반복해야 할 수 있습니다.