メインコンテンツまでスキップ

プラットフォーム固有の設定

このガイドでは、Runtime MetaHuman Lip Syncプラグインのプラットフォーム固有のセットアップ要件と構成について説明します。

Android / Meta Quest の設定

Android または Meta Quest プラットフォームを対象としており、このプラグインでビルドエラーが発生する場合は、プロジェクト設定で x86_64 (x64) Android アーキテクチャを無効にする必要があります。

  1. 編集 > プロジェクト設定に移動します
  2. プラットフォーム > Androidに移動します
  3. プラットフォーム - Androidビルドセクションで、**Support 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 アロケーターを強制する必要があります。

Unreal Engine 5.5以前の場合:

  • あなたのプロジェクトはソースからビルドされたエンジンを使用する必要があります(プリコンパイルされたバイナリではありません)
  • Target.csファイルに以下の行を追加してください:
GlobalDefinitions.Add("FORCE_ANSI_ALLOCATOR=1");

Unreal Engine 5.6以降の場合:

  • ソースビルドおよびプリコンパイル済みのエンジンビルドの両方で動作します
  • 以下の2行を 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以降でのみ必要です。 それ以前のエンジンバージョンは影響を受けません。
  • プラグインを更新すると元の設定ファイルが復元されるため、 この手順を繰り返す必要がある場合があります。