はじめに
BlenderでVRMファイルにアクセサリーを付け足したりポーズを変えたりなどなんらかの手を加えた場合、
VRMで書き出しても変更した部分が反映されません。
なので、そのアバターをVRMで使用したい場合でも一度FBXで書き出すなどしてUnityにもっていき、もう一度VRMに変換する必要があります。
方法は二つあり、①FBXに書き出して書き出した物をUnity内で扱う方法と②オブジェクトを書きださずに、VRMファイルを編集した.blenderのファイルをUnityに入れてそれをモデルとして扱う方法があります。
Unityに.blenderファイルを入れると、FBXと同じようにオブジェクトとして扱えるのですがその.blenderファイルに変更を加えるとすぐにUinty側に反映されてくれます。(バージョンが少し古いとできないっぽいです)
①のFBXに書き出す方法だと、何か変更があったときにまた書き出し直してUnityに持っていくなどの作業が発生して少し大変かなというのが個人的な意見です。
今回の記事では②のBlender内で変更を加えたVRMファイルをUnityと連携して扱う方法(上記②の.blenderファイルをUnityに入れる方法)とSTYLYにもっていくまでをご紹介します!をご紹介します?
関連記事
FBXで書き出してUnityにもっていく方法は
こちら↓↓↓の記事もご覧ください。
そもそもVRMにアクセサリーを付け足す方法はこちらの記事をご覧ください↓↓
Unityとの連携
ではさっそくやっていきます。今日はこのBlenderでパンダのヘアゴム?を付け足した可愛すぎるうちの子を扱っていこうとおもいます。
まず、Unityを開きます。あとでSTYLYにアップロードする人はUnityのバージョンは2017.4.xで開いてください。
Blenderは一旦閉じておいてください。
UniVRMの導入
UnityでVRMファイルを扱うためにまずUniVRMをインポートします。
Blenderとの連携なんですが、マテリアルはシェーダーを変更するため1からマテリアルをつくってテクスチャを設定しなければなりません。
それがめんどくさいので、もとのVRMファイルもUnityに入れてそのマテリアルをそのまま使っちゃいまっす。
そのためにUniVRMを入れます。あと後でVRMに変換するときにも必要なので。
以下のサイトから最新のUniVRMの.unitypackageをダウンロードします。
https://github.com/vrm-c/UniVRM/releases
URLをひらくとこのような画面↓にがでてきます。赤枠のやつでよろしいかと。なお、その時の最新のものをダウンロードしてください。
ダウンロードしたら、Unityで新規プロジェクトを開きましょう。
先ほどダウンロードしたUniVRMのunitypackageファイルをダブルクリックすると、Unityに以下のような画面がでてくるので、Allを押してからImportをおします。
これにてUnityでVRMファイルを扱うことができるようになりました!
ファイルを入れよう
では、アクセサリーを付け足したBlenderの.blenderファイルと、もとのVRMのうちの子をUnityに入れます。
このときに注意なのですが、VRMをUnityに入れるといろんなフォルダが生成されるので、
ほかのフォルダとごちゃごちゃになってややこしくなるのが嫌な人は、Assets直下にフォルダを作ってからその中にVRMファイルを入れると、まとまっていい感じになります!
ファイルはドラッグアンドドロップでいれることができます!
もし、追加で作ったアクセサリーなどにテクスチャがある場合はそのテクスチャ画像も一緒に入れてください。
連携についての説明
先ほど.blenderファイルを入れました。実はこれでもうUnityとBlenderが連携できているんです。
Assetsの下に入れた.blenderファイルは見ての通りFBXを入れたときのような感じになってます。
扱い方も同じです。ヒエラルキーにドラッグアンドドロップで配置してみましょう。普通のオブジェクトと同じような扱いですね。Blender内にあるオブジェクトが全部出てくるって感じです。
では、ヒエラルキーに置いたファイルを選択して、インスペクターにあるOpenを押して下さい。
ここが、Blenderとの連携部分です。Openを押すとBlenderが開いたと思います。ここが今回のメインです!!!
なんと、Openを押して開いたBlenderのファイルに変更を加えて保存すると、すぐにUnityに反映されます!ためしに、Blenderでオブジェクトを増やしたりしてください。
めっちゃべんりやーん。なぜ今まで知らなかったのか!!FBXに書き出してUnityのデータ入れ替えて…ってしなくても、変更があればここからちゃちゃっと変更するだけで反映されるので、いくらでも調整ができちゃうんですね。
ここで注意なのですが、.blenderファイルをUnityに入れたときにUnityのプロジェクトファイル内にデータがコピーされていて、Openを押したときはそれを開いているので、最初にUnityにいれたときの.blenderファイルとは別物です。
めっちゃ便利ですね。テンション上がりません?これ知ったとき私テンションめっちゃ上がったんですけど!
ということで付け足したアクセサリーなど変更があれば修正できるのですが、Blenderデータのものはオブジェクトの移動とかはUnityではなくBlenderで行って下さい!
ボーンの設定
つづいてボーンの設定です!
入れたFBXのモデルを選択し、インスペクターのRigのタブからAnimation TypeをHumanoidにしてApplyをおします。
Applyを押すと、その上にあるConfigure…が押せるようになるので、押してください。別のシーンに飛びます。
このシーンでボーンの確認をします。全部緑になってたらOKなので、Doneを押します。
もともとVRMだったものを持ってきてるのでエラーは出ないかと思います。たぶん。
マテリアルの設定
続いてマテリアルの設定をします。
ヒエラルキーに入れたオブジェクトの中身を見てみると、BodyとFaceとHairとskeltonがあります。BodyとFaceとHairそれぞれのインスペクタを見てみると、Skinned Mesh RendererのMaterialsのところにマテリアルが当てはめられているのがわかります。
ここのマテリアルを、もとのVRMのマテリアルに変えていきます。
Projectウィンドウの方でVRMのファイルを入れたところを見てください。いっぱいファイルが作られてる中に、Materialsのファイルがあります。これをひらいてください。
これを開くと中にマテリアルが入っているので、ここのマテリアルからさっきのBody、Face、Hairのインスペクタのマテリアルと同じ名前のものをドラッグアンドドロップしてはめていきます。
これでアバターのマテリアルはオッケーですね。あとは付け足したアクセサリーのマテリアルです。
プロジェクトウィンドウで右クリックし、Create>Materialでマテリアルを作成します。
テクスチャがある場合は以下の赤枠のところから設定します。四角のとこにドラッグアンドドロップしてもいいし、四角のところをクリックすると選択ウィンドウがでてくるのでそれでもいいです。
マテリアルのシェーダーも設定します。下の図の①マテリアルを選択し、②のところをクリック、③VRMのところにカーソルを持っていき、④の赤枠の中から選びます。
先ほど髪や顔に当てはめたマテリアルにあわせるのがよいかとおもいます。テクスチャがある場合はUnlitTextureが多いです。
テクスチャに透過部分がある場合はUnlitCutoutかUnlitTransparentにするとよいです。
テクスチャがなく色だけの場合は③のVRMの上の上のUnlitからColorを選択すると良いです。
ちなみに、Unlitとつくものは光の影響を受けないのですが、④のところのMToonを選択すると、光の影響もうけつつトゥーンぽいみためになるのでお好みで髪や体のシェーダーも変えるとよいです。
マテリアルは直接シーン上のオブジェクトにドラッグアンドドロップすることでも割り当てることができます。
これで準備は完了です!!
VRMへの変換とSTYLYへのアップロード
ではSTYLYにアップロードしましょう。VRMに変換してからSTYLYに上げましょう。
VRMへの変換からSTYLYへのアプロードは以下の記事の「その他の設定」項目以降を行ってください。
最初に変換するときに選択するのは、ヒエラルキーに置いた.blenderファイルがオブジェクトっぽくなってるものを選択してください。
今回は以上です!ありがとうございました!