![見出し画像](https://assets.st-note.com/production/uploads/images/136596276/rectangle_large_type_2_3db4aa83d679595ef96946f63d0fd759.png?width=800)
Unity x UniVRM(v0.121.0)でVRMインポートしてFBXモーションで踊らせてみる
本記事では、UnityにVRMを導入する方法について、UniVRM(v0.121.0)を使用した最新の手順をメモとしてまとめる。
UniVRMの最新版(0.121)は、0.10等の旧バージョンと導入方法が異なるため、その違いを明確にし、円滑にVRMモデルを導入できるようにすることを目的とする。
注意:本記事は、最新版UniVRMを用いたUnityへのVRM導入の個人的なメモであり、記事作成者はUnityのプロフェッショナルではない。
1.前提条件
UniVRM - v0.121.0 https://github.com/vrm-c/UniVRM/releases/tag/v0.121.0
Unity - 2021.3.22f1
任意のVRMモデル 本解説では0.x系モデルを利用
2.プロジェクトの準備
![](https://assets.st-note.com/img/1712547104658-vrNoASb1Aj.png?width=800)
Unityバージョンを確認の上、3D Coreにてプロジェクトを作成します。
最新版のUniVRMでは、Universal RPが必要なようなので、プロジェクト起動後、Universal RPをインストールします。
「Window」→「Package Manager」よりパッケージマネージャーを起動し、検索条件に「Packages:Unity Registry」を選択します。
その後検索欄に、「Universal RP」を入力し検索。
![](https://assets.st-note.com/img/1712547482362-RSmoxKqh50.png?width=800)
上記画面が出てくるので、インストールを選択します。
もし、Universal RPをインストールせずにUniVRMを導入した場合、
以下のようなエラーが表示されます
vrm Shader error in 'VRM10/Universal Render Pipeline/MToon10': Couldn't open include file 'Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl'.
at Assets/VRMShaders/VRM10/MToon10/Resources/VRM10/vrmc_materials_mtoon_depthonly_vertex.hlsl(5)
3.UniVRMの導入
UniVRM Gitページより、v0.121.0をダウンロードします。
ダウンロードしたUnityPackageをダブルクイックして導入します。ダブルクイック後、ImportでUniVRMをプロジェクトにインポートします。
インポート後、「Consloe」にて、エラーが発生していないことを確認してください。
「vrm Shader error in 'VRM10/Universal Render Pipeline/MToon10': Couldn't open include file 」のエラーが発生している場合は、Universal RPがインストールされていません。再度インストールを確認してください。
![](https://assets.st-note.com/img/1712548410192-rptnHAEpKJ.png?width=800)
Assets\VRMShaders\GLTF\IO\Runtime\Texture\Importer\KtxTextureDeserializer.cs(13,38): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread.
は、非同期処理についての警告なため一旦無視します。
4.VRMアバターのインポート
今回は、「Mxueru -ミュエル-」のアバターを購入し、アニメーション適応を行いました。(私が開発しているAITuber アイリに用いさせていただいているアバター)
![](https://assets.st-note.com/img/1712549066130-iJ3zpuoRV8.jpg?width=800)
VRMアバターをお持ちでない場合は、ニコニコ立体ちゃんやユニティーちゃんなど、フリーアバーターの利用を推奨いたします。(利用規約要確認)
Unity Assets内に任意の名前のフォルダーを作成し(VRM導入の際ファイルが自動生成されるためキャラ名等でフォルダー作成推奨)、VRMファイルを作成したフォルダーにドラッグアンドドロップします。
![](https://assets.st-note.com/img/1712549658697-lyAZdWBb4o.png?width=800)
VRMドラッグアンドドロップ後、VRMモデルのUnityプレハブデータが生成されます。
![](https://assets.st-note.com/img/1712549772695-dI8BlDmuU6.png?width=800)
プレハブデータをHierarchyウインドウにペーストすることで、SceneにVRMモデルを表示できます。
![](https://assets.st-note.com/img/1712549848446-Pxa3hc315g.png?width=800)
基本的なVRMモデル導入の流れはここまでとなります。
参考:
5.モーション付きFBXファイルを使ってVRMを踊らせてみる
VRMモデルをUnity導入だけだと、味気ないので、VRMモデルを踊らせてみることとします。
今回用いるモーションデータは、星街すいせいさんの「ビビデバ」の配布モーションデータを用いさせてもらいました。
5A.モーションファイルの準備
上記Youtubeリンク概要欄にてモーションデータ配布がありますので該当リンクよりvmdデータをダウンロードします。
![](https://assets.st-note.com/img/1712550712812-EmR9WSSM2e.png?width=800)
5B.FBXファイルのインポート
その後、Assetsフォルダーに適当なファイル(今回の例ではMotion)を作成しその中にダウンロードしたFBXファイルをインポートします。
![](https://assets.st-note.com/img/1712554252117-sziU46ktH3.png?width=800)
インポートしたFBXデータを選択し、Inspectorウインドウ、Rig→Animation TypeをHumanoidに変更しApplyをクリックしリグ設定をHumanoidモデルに変更します。
![](https://assets.st-note.com/img/1712555508480-9RAflu3J28.png?width=800)
5C.モーションの適応
モーションファイルを適応するアニメーションコントローラを作成します。
![](https://assets.st-note.com/img/1712554365917-ZrAGO0yCCC.png?width=800)
右クイックCreate→Animation Controllerを選択し、新規コントローラを作成します。
作成したコントローラをダブルクイックして「Animator」ウインドウを表示。
5BでインポートしたFBX内のツリーを表示し、motionファイルをAnimatorウインドウにドラッグアンドドロップします。
![](https://assets.st-note.com/img/1712554574086-u4JXyY6OzG.png?width=800)
ドラッグアンドドロップすると以下のような状態になります。
![](https://assets.st-note.com/img/1712554600754-fiWUkLVqmR.png?width=800)
踊らせたいVRMモデルのプレハブデータをHierarchyにドラッグアンドドロップしたうえで、プレハブモデルを選択し、Inspectorを開きます。
![](https://assets.st-note.com/img/1712554650259-gYMbrft4Ny.png?width=800)
先ほど作成したアニメーションコントローラを、プレハブモデルのAnimator Controllerにドラッグアンドドロップします。
![](https://assets.st-note.com/img/1712554771117-TevoE2oqKc.png?width=800)
この状態で再生ボタンを押すと、以下のようにモーションが再生されます。
Note用動画。VRM+FBXでモーション適応した動画例。 pic.twitter.com/y5XcCrR9JW
— 猩々 博士🧪💻 研究開発系V & AITuber開発中 (@Mega_Gorilla_) April 8, 2024
この記事が気に入ったらサポートをしてみませんか?