Unreal Engine5でVRM4UとVMCを使って簡単なアニメーション作成

2023年版のVRM4Uで簡単にアニメーションを作ってみようという記事です。
多分プラグインの作者のはるべえ haru(@ruyo_h)さんが想定している使い方とはかなりかけ離れていると思われる方法ですのでプラグインのパージョンが変わったら使えなくなる可能性が高いです。

UE5でプラグインのインストールできる程度の人向けですので色々端折っています。

まずはUnreal Engineで5.1のプロジェクトを作成します。
※今回は最新版を使いたいだけですので5.0.3でも構いません。
 それより前のバージョンはIKリグ等が使えないので今回の紹介する内容はできない場合があります。

VRM4Uのページに行き「導入はこちらから」のリンクをクリックしてプラグインの導入のページに行き、「こちらのリンクよりhttps://github.com/ruyo/VRM4U」をクリックして
githubのページに行きます。
※Epicアカウントと紐づけている必要がありますがそのへんの説明は省略します

ページ中央にある○○○tagsとある部分をクリックします。

tagsと書いてあるリンクをクリック

20230103のバージョンをダウンロードします。
※古いバージョンだとIKリグだとかVMCのテストマップなどが入っていないため大幅に手間が増えてしまいます。

ダウンロードしたZIPファイルのPluginsを作成したプロジェクトに入れます。

Pluginsをコピー

プロジェクトを起動してVRM4Uのプラグインを有効化します。

プラグイン有効化


VRMを格納するフォルダを作成し、そこにVRMファイルをドラッグしてVroidのキャラクターをインストールします。
※今回使ったデータは私が作成したタコピーの原罪に出てきたさつきちゃんというキャラです。版権元にご迷惑のかからない範囲でご利用いただけると嬉しいです。

Vroidをインストール

VRMをインストールしたフォルダをSKELで検索し、SKEL_と頭についたファイルを開きます。

開いた画面のメニューでウインドウ⇛アセット詳細を選びます。

スケルトンファイルでアセット詳細ウインドウを開く

アセット詳細でCompatible Skeltonsを「+」で開いた後に[「SKEL_VroidSimple」を選び、スケルトンファイルを保存します。
※もしUE4標準のアニメーションを使いたい場合は、サードパーソンのコンテンツを追加しIKリグ設定後ここで追加します。
詳しくは九里江めいく先生の以下の動画等を参考にしてください。
【UE5ゲーム制作講座】Compatible Skeletonを使えばこんなに簡単にマケプレのアニメが使えちゃうんですか!?いちいちアニメリターゲットしなくていいんです!?!?

次にPlaginsフォルダをvmcで検索して出てきた「VRM4U_VMC」のテストマップを開きます
※この工程はVRM4Uのバージョンによっては必須ではないです。

続いてPlaginsフォルダをvmcで検索して出てきた「ABP_VRoidVMC_Bone」をダブルクリックして開きます。

VMCプロトコルが使えるソフトを起動します。
今回はSteamで販売しているVRM Posing Disktopというソフトを例に説明します。
※VMCプロトコルさえ出せればいいので無料のTDPTなどでも構いません。

起動したらVMCプロトコルをIPアドレス「127.0.0.1」ポートを「39540」に設定します。
※iphone等などのPCにつながっていない端末からWiFi経由でVMCプロトコルを送信する場合のIPアドレス設定は各アプリの説明を参考にしてください。
※身長や手足の長さがだいぶ違う場合はアプリ側やUE5側で該当のVRMを使ってモーションキャプチャーしたほうがよいですが、手順が増えてしまうので今回はCompatible Skeletonが勝手にやってくれる補正機能にまかせます。

VMCプロトコル設定

とりあえず、アプリにUE5に送信したいポーズをとらせます。

ソフトにポーズを取らせる

UE5に戻り「ABP_VRoidVMC_Bone」の再生ボタンを押してアプリから送られたポーズを取ることを確認し、録画ボタンを押します。
※古いVRM4UだとOSCプラグインをONにする必要があるかもしれません。

ポーズを録画

ダイアログが出てきますので名前をつけてOKを押します。
そしてすぐに録画を停止します
※停止ボタンは録画を開始すると録画ボタンのちょっと上に出てきます。
※本当はポーズだけでいいのですがアニメーションじゃないとできないので・・・
※TDPTのような動画からモーションキャプチャーデータ作ってくれるようなソフトを使えば長いアニメーションを録画することも可能です。

名前をつけてアニメーションを保存

ポーズの入ったアニメーションを必要な分だけ保存したらアニメーションをさせたいマップを開きVroidのスケルタルメッシュをマップに配置します。


Vriodのスケルタルメッシュをマップに配置

レベルシーケンスを作成します。

レベルシーケンス作成


動かしたいスケルタルメッシュをアウトライナーからシーケンサーにドラッグします。

シーケンサーにドラッグ

シーケンサーで作成したアニメーションが選択できることを確認します。
トラックを動かし選んだアニメーションが反映することを確認します。
※アニメーションが選択できない場合はCompatible Skeletonの設定が間違っています。

シーケンサーでアニメーションが選べることを確認

あとはカットシーンごとに同じ工程を繰り返して映像を作るだけです。
アニメーションのブレンドがあるので静止のアニメーションの組み合わせでも単純な動きはしてくれます。


この記事が気に入ったらサポートをしてみませんか?