やりたいこと
Unreal Engine(以下UE)上で、VRoidアバターにオリジナルの服を着せ、ダンスを躍らせながらリアルタイムクロスシミュレーションします。
YoutubeにフルHD画質でアップしました。
使用ソフト
以下の3つのソフトを使用します。
- VRoid Studio・・・・・アバター作成
- CLO・・・・・・・・・服作成
- UE・・・・・・・・・・クロスシミュレーション
手順
VRoid Studioでの作業
アバターの作成
VRoid Studioでアバターを作成し、VRM形式でエクスポートします。
服は別途CLOで作成して、UE上で着せます。
UEでの作業(前編)
VRoidアバターのインポート
VRoidアバターをUEにインポートします。
デフォルトではUEにVRMファイルはインポートできませんが、プラグインのVRM4Uを入れるとインポート可能になります。
髪の毛などの揺れ物も再現できて素晴らしいです。
VRM4U
https://ruyo.github.io/VRM4U/
MixamoのモーションをVRoidアバターにリターゲット
Mixamoからモーションをダウンロードし、UE上でVRoidアバターにリターゲットします。
リターゲットのやり方はこちらの動画が分かりやすかったです。
https://youtu.be/2Cuopzta_Ak
上記の動画では、リターゲットチェーンを自分で設定する方法が紹介されていますが、VRoidアバターには予め設定されています。
クロスシミュレーションの準備
UEにはデフォルトでクロスシミュレーションの機能がついていますが、今回はプラグインのuDraperを使ってみます。
有料プラグインですが、14日間は無料で試すことができます。
uDraper
https://udraper.com/
公式チュートリアルに基本の使用方法が記載されています。
https://udraper.com/blogs/tutorials/using-udraper-plugin
UE上に配置したVRoidアバターに対して「DraperCollider」と「DraperSimulation」を追加し、「DraperSimulation」>「Actions」>「Export Collider」を選択します。
これにより、CLOで服を作成する際に必要な着せ付け用アバター(OBJ形式)がエクスポートされます。
CLOでの作業
服の作成
先ほどUEからエクスポートした着せ付け用アバターをCLOにインポートし、服を作成します。
生地の種類(マテリアル)を分けておくと、クロスシミュレーションの際に別々のテクスチャや物性を割り当てることができます。
uDraperのチュートリアルに従い、OBJ形式で服をエクスポートします。
UEでの作業(後編)
服のインポート
UE上に配置したVRoidアバターに対して「DraperGarment」を追加し、「Actions」>「Import」を選択します。
CLOで作成した服を選択すると、UEに服がインポートされます。
「Edit」で服のマテリアルごとのテクスチャの設定や物性の編集ができます。
クロスシミュレーションの実行
「~このレベルをプレイ」ボタンをクリックするとクロスシミュレーションが始まります。
マウスでドラッグすることで、服を引っ張ってシワを伸ばしたり、形状を整えたりできます。
アバターが服をすり抜けてしまう場合の対応は、こちらの動画が参考になります。
https://youtu.be/EjGoHQJhAIo
まとめ
動画にしてしまうと感動が伝わりにくいですが、UE上でVRoidアバターにオリジナルの服を着せダンスを躍らせながらリアルタイムクロスシミュレーションすることに成功しました。(かわいい)