Unreal Engine 4 を Live Link で Maya に接続する

Unreal Engine 4 (UE4) を Maya のバージョンに接続して、UE4 内で Maya のコンテンツをリアルタイムでプレビューする方法について説明します。

Windows
MacOS
Linux

この操作ガイドでは、Live Link プラグインを使用して Unreal Engine 4 (UE4) を Maya に接続し、Maya 内でスケルタル メッシュとアニメーションを制御しながら、UE4 のレンダリングされたスケルタル メッシュ上でこれらをリアルタイムでライブ プレビューする方法について説明します。

Live Link プライグインを使用すると、アニメーションがどのように表示されるかを確認するためにコンテンツをエクスポートして UE4 にインポートする必要がなくなるため、アニメーション制作をより迅速に行うことができます。 Maya 内で直接作業し、Live Link を介してエンジン内でリアルタイムにプレビューすることができます。   この操作ガイドでは、Live Link を設定して Maya に接続し、Maya 内でスケルタル メッシュ アニメーションを制御しながら、それらを UE4 内でプレビューするための一連の手順を説明します。

このガイドでは、「ブループリントのサードパーソン テンプレート」プロジェクトと Maya 2017 を使用します。

Live Link は他のバージョンの Maya と他の DDC ツールでも機能します。詳細については、 Live Link プライグイン ドキュメント ページを参照してください。

1 - Live Link プライグインを有効にする

  1. プロジェクト内で、メニュー バー[Edit (編集)] から [Plugins (プラグイン)] を選択します。

    Step_01-1.png

  2. [Animation (アニメーション)] セクションで、[Live Link][Enabled (有効)] をオンにして確認ウィンドウの [Yes] をクリックし、エディタを再起動します。

    Step_02-3.png

    これによって Live Link プラグインが有効になり、外部の DDC ツールに接続できるようになります。DCC ツールを UE4 に接続するには、当該のツールに対応するプラグインを有効にする必要があります。この操作ガイドでは Maya に焦点を当てているため、Maya 内でプラグインを有効にする必要があります。

  3. UE4 GitHub レポジトリから MayaLiveLink プラグイン ファイルをダウンロードし、任意の場所に解凍します。

    Step_03-1.png

    UE 4.23 の場合は最新バージョンのプラグインを選択します。それより前のバージョンの UE にはバージョン 1.0 を使用します。

  4. Maya の当該のバージョンのフォルダをコピーして Maya のインストール フォルダに移動し、「plug-ins」 フォルダ内に貼り付けます。

    Step_04-1.png

    Maya のバージョン 2016 ~ 2019 向けの事前ビルド済みのバイナリがありますが、ここでは Maya 2017 を使用します。

次の手順では、Maya 内で Live Link プラグインを有効にして、Maya Live Link の UI ウィンドウを開きます。ここでは、UE4 エディタの実行バージョンへの接続状態を確認できます。

2 - Maya Live Link を有効にする

  1. Maya を開いて [Windows (ウィンドウ)] から [Settings/Preferences (設定)] に移動し、 [Plug-in Manager (プライグイン マネージャー)] を選択します。

    Step_05-1.png

  2. [Browse (参照)] ボタンをクリックし、コピーした「MayaLiveLink」フォルダに移動して .mll ファイルを追加します。

    Step_06-1.png

  3. 前の手順を繰り返して、 [Plug-in Manager].py ファイルを追加します。

    Step_07-2.png

    追加すると、[Plug-in Manager] にこれらのプラグインが [Loaded (ロード済み)] と表示されます。

  4. Maya の画面左下にある [MEL] コンソールに 「MayaLiveLinkUI」 と入力して Enter キーを押します。

    Step_08-2.png

    MEL コンソール コマンドでは大文字と小文字が区別されるので、上記の手順で示されているとおりに正確に入力してください。

    これにより Maya Live Link UI の接続状態を示すウィンドウが開きます。

    Step_09-1.png

    [Maya Live Link UI] ウィンドウの右上に、UE4 エディタの実行バージョンに接続しているかどうかを示す接続状態が表示されています。下のウィンドウでは、UE4 にストリーミングする サブジェクト の名前を変更したり、追加または削除したりすることができます。

これらの操作についてはこのガイドで後ほど説明します。ここではまだ未接続の状態ですが、次の手順で UE4 への接続を確立します。さらに、Maya で使用するアニメーション アセットとスケルタル メッシュをエクスポートして、ライブ プレビュー用に UE4 にストリーミングするために、これらをサブジェクトとして追加します。

3 - UE4 への接続を確立する

  1. UE4 エディタ内で、メニュー バー[Window (ウィンドウ)] から [Live Link] を選択します。

    Step_10-1.png

  2. [Live Link] ウィンドウの [+ Source (ソース追加)] ボタンをクリックして、[Message Bus Source (メッセージ バス ソース)] で目的の Maya Live Link ソースを選択し、[Ok] をクリックします。

    Step_11-2.png

    Maya に戻ると、[Maya Live Link UI] ウィンドウの [Connection (接続)] が更新されて、最新の接続状態が示されているのがわかります。

    Step_11b-1.png

    接続が確立されたので、プレビューするサブジェクトを設定し、接続をテストします。

  3. UE4 で 「Content」 > 「Mannequin」 > 「Animations」 フォルダに移動して、ThirdPersonRun アセットを開きます。

  4. ツールバーの [Export Asset (アセットのエクスポート)] をクリックし、[Preview Mesh (メッシュのプレビュー)] を選択します。

    Step_12-1.png

  5. [Yes] を選択してスケルタル メッシュをエクスポートし、[FBX Export Options (FBX エクスポート オプション)] ウィンドウで [Export Preview Mesh (プレビュー メッシュのエクスポート)] をオンにしてエクスポート場所を指定し、[Export] ボタンをクリックします。

    Step_13-1.png

  6. Maya に戻って [File (ファイル)] メニューから [Import (インポート)] を選択し、前の手順でエクスポートした FBX アセットをインポートします。

    Step_14-1.png

  7. [Animation (アニメーション)] モードに切り替えて、キャラクターの [root] ボーンを選択します。

    Step_15-1.png

  8. [Maya Live Link UI] ウィンドウで [Add Selecton (選択項目の追加)] ボタンをクリックします。

    Step_16-2.png

    ここでは、UE4 にストリームする サブジェクト として選択項目 (複数可) を追加します。

    Step_17-1.png

    プラグインはこれがジョイント階層であることを理解しており、サブジェクトをキャラクターとしてラベル付けします。「root」 はサブジェクトの名前です。必要に応じてテキスト入力ボックスで変更することもできます。この名前は UE4 で使用されるサブジェクト名となります。 デフォルトでは、ストリーミングされるデータのタイプに基づいてストリーム タイプが設定されます。これを変更して、[Stream Type (ストリーム タイプ)] 設定に含めたい情報をストリーミングすることもできます。

使用しているコンピュータに複数のネットワーク アダプタがあり、データ受信元としていずれかを指定する場合は、[Project Settings (プロジェクト設定)] の Unicast Endpoint で指定する必要があります。

これで、サブジェクトを UE4 エディタにストリーミングするよう Maya を設定できました。次の手順では、ストリーミングされるサブジェクトを受け取れるように UE4 を設定し、Maya からのコンテンツを UE4 内でライブ プレビューできるようにします。

4 - Live Link プレビュー コントローラー

  1. UE4 内で 「Content」 > 「Mannequin」 > 「Character」 > 「Mesh」 フォルダに移動して、 SK_Mannequin アセットを開きます。

  2. [Preview Scene Settings (プレビュー シーン設定)] タブをクリックして、[Preview Controller (プレビュー コントローラー)][Live Link Preview Controller (Live Link プレビュー コントローラー)] を選択します。

    Step_18-1.png

  3. [Live Link Subject Name (Live Link サブジェクト名)] のドロップダウン メニューをクリックして [root] を選択します。

    Step_19-1.png

    ビューポートが更新されて、キャラクターが Maya でキャラクターが使用してるポーズを取ります。

  4. [Enable Camera Sync (カメラ同期を有効化)] オプションをオンにして有効にします。

    Step_20-1.png

    これにより、UE4 のカメラが、Maya 内で使用された最後のビューポート カメラと同期されます。Maya 内でカメラを動かすと、UE4 のカメラも更新されて同じように動きます。

  5. [Editor Preferences (エディタの環境設定)] に移動して、 [Performance (パフォーマンス)][Use Less CPU when in Background (バックグラウンドでの処理により少ない CPU を使用)] オプションをオフにして無効にします。

    DisableUseLessCPU-1.png

    このオプションが有効な場合、エディタのバックグラウンド処理のパフォーマンスが調整され、Maya にフォーカスがある際にエディタによるレンダリングが停止するため、リアルタイムでの更新が行われなくなります。

    アイドル状態でもエディタによる評価を継続させたい場合は、Live Link の接続ウィンドウにある Valid Engine Time の設定を変更して、エディタが評価を停止するまでの時間を調整することができます。 EvalTime.png

  6. Maya に戻ってアニメーションをスクラブするか、ビューポートのカメラを動かします。

この例では Live Link プレビュー コントローラーを使用していますが、アクタにアタッチされている Live Link コンポーネント を使用してデータをストリーミングすることもできます。

5 - 最終結果

Maya でアニメーションをスクラブするかカメラを動かすと、UE4 内のキャラクターとカメラの動きが更新されて、Maya 内の動きと一致するようになります。 一般的なワークフローとしては、Maya でコンテンツを作成してスケルタル メッシュをエクスポートし、それを UE4 にインポートします。次に、このガイドの手順に従って接続を確立し、Maya で作成したアニメーションを UE4 の Live Link サブジェクトでプレビューします。

アニメーションに変更を加えると、変更内容が UE4 の Live Link サブジェクトでリアルタイムで反映されます。

上のビデオでは、キャラクターが走っているときに周りを見回すように頭の位置を変更し、それが UE4 内でどのように映るかを示しています。 これは Live Link プラグインの使用方法を示すための簡素化された例ですが、この機能にはまだまだ多くの利点があります。詳細については、「Live Link プラグイン」ドキュメント ページを参照してください。

4.23 より前の Maya Live Link プラグインを使用している場合、ブループリントを介してカメラを操作する際に、トランスフォームが適切に行われないことがあります。これを修正するには、下の画像にあるように Add Relative Rotation (相対回転の追加) ノードを追加して、その値をそれぞれ 「0」、「180」、「90」 に設定します。

422CameraFix.png

Select Skin
Light
Dark

新しい Unreal Engine 4 ドキュメントサイトへようこそ!

あなたの声を私たちに伝えるフィードバックシステムを含め、様々な新機能について開発をおこなっています。まだ広く使える状態にはなっていないので、準備ができるまでは、ドキュメントフィードバックフォーラムで、このページについて、もしくは遭遇した問題について教えていただけると助かります。

新しいシステムが稼働した際にお知らせします。

フィードバックを送信