【UE4】【UE5】キャラクターのリアルタイム口パクOculusLipSyncを4.25以上で使うには?
■ はじめに
UE4には音声データやマイクからキャラクターをリップシンク(口パク)させる方法に、Oculus社が無料公開しているOVRLipSyncがあります。しかし、マイクからリアルタイムに口パクさせる機能(LiveCaptureモード)を4.26やUE5で利用しようとするとマイクが認識しないという問題があります。
今回はこの問題を解決し、4.25以上で利用できるように解説したいと思います。
説明では4.26をサンプルに上げてますが、移行をUE5にスイッチすればUE5でも動作いたしました。
■ 環境
・Windows10
・UE4.26.2(デモは4.25)(UE5では早期アクセスで動作確認済み)
・VisualStudio2019
・OVRLipSyncUnrealDemo
配布元▼
https://developer.oculus.com/downloads/package/oculus-lipsync-unreal/
■ 4.25での動作確認
公式サイトからデモプロジェクトをダウンロードしたら、まず4.25での挙動を確認します。
細かい説明は他の方が記事を出していらっしゃるのでそちらをご覧ください。
コンテンツ/Maps/LiveCaptureMelindatarのレベルを実行して、PCのマイクに応じてデモモデルが口パクするか確認しましょう。
■ 4.26移行と原因の確認
4.25環境での動作チェックがうまくできたら、一度プロジェクトを閉じてバージョンを変更します。
この状態で先ほどのレベルを実行すると、マイクがうまく認識できていなく、赤いエラーが出ていることがわかります。
■ 解決方法
プロジェクトを閉じ、以下のファイルをVisualStudio等で開きます。
~ OVRLipSyncUnrealDemo\Plugins\OVRLipSync\Source\OVRLipSync\Private
OVRLipSyncLiveActorComponent.cpp
122行目の「DEFAULT_DEVICE_NAME」を「""」(空文字)に変更します。
▼変更前
VoiceCapture = FVoiceModule::Get().CreateVoiceCapture(DEFAULT_DEVICE_NAME, SampleRate, 1);
▼ 変更後
VoiceCapture = FVoiceModule::Get().CreateVoiceCapture("", SampleRate, 1);
次に、~OVRLipSyncUnrealDemoファイル直下のIntermediateとBinariesを削除します。
プロジェクトを開きます。
IntermediateとBinariesを消したことでリビルドが走り、先ほどの変更が適応されます。
エラーが消えてうまく実行できていることを確認しましょう。
お疲れさまでした。
オリジナルキャラクターへの適応や音声ファイルからの口パクの生成など
より詳細な使用方法はこの記事を参考にチャレンジしてみてください。
この記事が気に入ったらサポートをしてみませんか?