さて連携の方法です。ビデオがあって、その通りに設定しただけですが、ビデオがわかりにくかった上に忘れないための自分向けのメモでもあります。
今回MetaHumanCreatorを使って(フリーで使えます)、新しいキャラクタを作ってみました。名前はJiroにしてます。
まずは、関連ファイルの準備です。
- 新しいプロジェクトを作って、MetaHumanをインポート
- ここでセーブして一旦、UnrealEngineをクローズ
- C:\Program Files\Reallusion\Shared Plugins\Auto Setup\Unreal
にあるContentとPluginsをプロジェクトフォルダにコピー - KitにあるContentをプロジェクトにコピー
- 更にC:\Program Files\Reallusion\Shared Plugins\iClone Live Link for Unreal\iClone Live Link Plug-in for Unreal 4.26\PluginsにあるプラグインをUnreal Engineのプロジェクトフォルダにコピー
ここでUnreal Engineを起動
メニューにCC SetupとiClone Live Linkが出てくればひとまずOK
プラグインの確認
- Character Creator & iClone Auto Setup
- iClobe Live Link
- RigLogic Plugin
全て有効化しておく。
続いてMetaHumanのブループリントの変更です。
- MetaHumanインスタンス(World Outerにある)を選択して、Edit BP_Jiroを押下。ここでBPが開く
- 左のリストよりBodyを選択
- 右のプロパティのAnimationセクションにあるAnimation ModeをUse Animation AssetからUse Animation Blueprintに変更
- Anim Classとしてm_tal_nrm_AnimBPを選択
- BPはコンパイル、保存をして閉じる
そして別のアニメーションブループリントを変更。
- コンテントリストより Content-MetaHumans-Common-Male-Tall-NormalWeight-Bodyをたどって、m_tal_nrm_AnimBPを開く
(開いたときにAnimGraphタブがなかったのであせったけど、左のリストにあるAnimGraphをダブルクリックしたら、タブが開いた) - InputPoseの次にLiveLinkPoseをつなげる。
- OutputをControlRigのSourceにつなげる
- LiveLinkPoseにあるLiveLinkSubjectNameを伸ばしてVariableをつなげる
MetaHumanのブループリントに戻って以下の続きをします。
- EventGraphタブを開く
- 左のリストの一番上、Add Componentを開いて、LiveLinkSkeltalAnimationを選んで追加(名前はLiveLinkがデフォルトでそのまま使用)
- このLiveLinkオブジェクトが選択された状態で、右のEventsからOnLiveLinkUpdateボタンの+を押す。
そうするとグラフの中にOnLiveLinkUpdatedインスタンスが追加される。 - 左のリストよりBodyインスタンスをグラフにドラッグドロップする(Bodyインスタンスがグラフ上に現れる)
- Bodyのアウトプットを伸ばして、GetAnimInstanceインスタンスに接続する。
- そのRetuenValueにCastTo m_tal_nrw_animbpに接続する
- CastTo m_tal_nrw_animbのAs M Tal Nrw AnimBPアウトプットをLiveLinkSubjectNameにSetする(アウトプットを伸ばしてLiveLinkで検索してSetを選ぶ)
- CastTo m_tal_nrw_animbの一番上のアウトプットをLiveLinkSubjectName Setの一番上のインプットに接続
- 左のComponentにあるLLink Face SubjをDuplicateで複製して、LLink Body Subjという名前にする
- このパラメタをGraphにGetでドロップして、LiveLinkSubjectNameに接続する
- 最後にこのSETのアウトプットをLiveLinkSetupのインプットにつなげる
- その下のSubjectNameもつなげる
- そしてBodyをTargetにつなげる
- そしてOnLiveLinkUpdatedのアウトプットをCastTo m_tal_nrw_animbpのインプットにつなげる。
箇条書きにすると長いですが、やってることは上のグラフの範囲です。
ここで、Unreal側のLinkサービスを起動して、iClone側もリンクを起動すると、iClone側のポーズがMetaHumanに反映されます。モーションもそのまま、これは便利ですね。
別のポーズをiClone側でドラッグドロップして、Unrealにもとからついてくる壁とドア、壁のテクスチャをつけるとこんな感じに。