こんにちは、エンジニアのオオバです。
3Dキャラを使ったアプリケーションを作りたい!!ってなった時、3Dモデルをどうやって用意しよう。。。って悩みます。
そんな時に便利なのは VRoid です。
VRoid(ブイロイド)とはピクシブ株式会社が提供する3Dキャラクター制作サービスで、高品質な3Dキャラを自分で自由にカスタマイズでき、VRMという独自形式のフォーマットで書き出すことができます。
つまり3Dソフトを使うことなく高品質な3Dキャラをモデリングすることが出来るということです。
前述の通りVRoidはVRMで書き出されます。しかしUnityではそのまま扱うことが出来ません。せっかくVRoiでかわいいキャラを作ったのに。。。どうやってUnityで使ったら良いのだろう。
このように悩んでいる方に向けて本記事ではUnityでVRoidで作ったキャラクターを表示させ、アニメーションを適用する方法も含めて紹介します。
プログラミングは一切登場しないので、だれでも簡単に実装可能です。
ぜひ最後まで読んでみてください。
👉DOTweenの教科書を読んでUnityアニメーションをプログラミングしてみよう!
VRoid Studioでキャラクターの書き出し
3DキャラクターはVRoid専用のVRoid Studioというアプリを使って作成します。
VRoidアプリを開いたところ。特に専門知識がなくても高品質な3Dキャラクタを作成できます。
VRoidのインストール方法
こちらのVRoid公式サイトからVRoid Studioをインストールできます。
- Windows版
- Mac版
- iPad版
- Steam版
僕はMac版をインストールして使っています。
VRoidの書き出し方法
キャラを作成したらUnityで使うためにVRoidを書き出します。
VRoid Studio画面右上の書き出しアイコンをクリックして、
VRMエクスポート
ボタンをクリックしてください。 設定そのままで
エクスポート
ボタンをクリック。 VRMエクスポート画面で、フォーマットを VRM1.0 に設定してエクスポートしてください。
以上でVRoid書き出しまでの作業が完了しました。
次はUnityで書き出したVRoidを使用する手順を解説していきます。
VRoidに必要なパッケージをUnityエディタにインストール
VRoid Studioから書き出したVRoidファイル(VRM)はUniVRMを使ってUnityで使えるようになります。
繰り返しになりますがVRMはUnityでそのまま扱うことが出来ないのです。
UniVRMのインストール
今回はUniVRMのバージョン0.128.0を使用します。Package Managerを使用してインストールするのがとても便利なのでオススメです。
以下のパッケージをmanifest.jsonの"dependencies"内に記載してください。manifest.jsonはUnityプロジェクトのルート階層にあるPackages内に格納されています。
"com.vrmc.gltf": "https://github.com/vrm-c/UniVRM.git?path=/Assets/UniGLTF#v0.128.0",
"com.vrmc.univrm": "https://github.com/vrm-c/UniVRM.git?path=/Assets/VRM#v0.128.0",
"com.vrmc.vrm": "https://github.com/vrm-c/UniVRM.git?path=/Assets/VRM10#v0.128.0",
manifest.jsonが以下のような感じになってたらOK。
{
"dependencies": {
~~~~~~~略~~~~~~~
"com.vrmc.gltf": "https://github.com/vrm-c/UniVRM.git?path=/Assets/UniGLTF#v0.128.0",
"com.vrmc.univrm": "https://github.com/vrm-c/UniVRM.git?path=/Assets/VRM#v0.128.0",
"com.vrmc.vrm": "https://github.com/vrm-c/UniVRM.git?path=/Assets/VRM10#v0.128.0"
}
}
以上でUniVRMのインストールは完了です。
VRMファイルをUnityプロジェクトへ格納
次にVRoid Studioで書き出したVRMファイルをUnityプロジェクト内に格納してみましょう。
この作業は必ず前章の「UniVRMのインストール」を終わらしてからにしてください。順番を逆にすると正常に動作しません。
プロジェクトに追加したVRMファイルをHierarchyにドラッグアンドドロップしてシーンビュー上で表示させてみます。
するとこのようにVRoid Studioと同じような見た目でUnityエディタ内に表示されます。
ズームするとこんな感じです。
VRMにアニメーションを適用する方法
せっかくインポートしたキャラクターが動かないのはもったいないですよね。せっかくならアニメーションさせてみたいところです。
VRM側の準備
メニューAssets -> Create -> Animation -> Animator Controller
からAnimatorControllerを作成します。 事前にAddComponentされているVRMのAnimatorにセットしておきます。
↑AnimatorコンポーネントのControllerに作成したAnimatorControllerをセット。
以上でVRM側の準備は完了です。
適用するアニメーションデータの用意
今回はUnity Asset Storeで事前に手に入れておいた「KAWAII ANIMATIONS 100」というアセットを使用しました。女の子のかわいらしく、また汎用性の高いアニメーションがセットになった便利なアセットです。
Unity-chanに付属しているアニメーションだとちょっと物足りない人にオススメのアセットです。
→ Asset StoreでKAWAII ANIMATIONS 100をチェック
最終的にこんな感じでアニメーションさせてみました。まとめ
本記事ではVRoid Studioで書き出したVRMをUnityに追加し、アニメーションを適用する手順を解説してきました。
簡単に手順をまとめるとこんな感じです。
- VRoid Studioでキャラ作成
- VRoid StudioからVRM1.0形式で書き出し
- UniVRMをUnityエディタにインストール
- UnityエディタにVRM追加
- 再生させたいアニメーションクリップを追加
お手軽に高品質のモデルを無料で使えて、アニメーションも当てることが出来るというのはゲーム開発には非常にありがたいです。
急な話ですがUnityと3Dを使ったプロダクトが作りたくなり、本格的に3Dの学習を進めている最中です。学習の結果や途中で得た成果物は随時ブログで共有し、皆様のゲーム開発にお役に立てればと思っています。
引き続きよろしくお願いいたします。
この記事が気に入ったらフォローしよう
「Unity初心者大学」というUnity初心者向けのYouTube始めました!!
ぜひチャンネル登録をお願いします!
最後まで読んでいただきありがとうございました!
すばらしいVRoidライフをお過ごしください。
- Unity6000.0.23f1
- UniVRM v0.128.0