モデルが出来た嬉しさからunityで動かしてみようってなった人の話

 

どうもです、mayoです。

 

前回の記事ではblenderでモデルを形だけでもいいからとりあえず作ってみよう!っていう内容をお伝えしました。

今回は出来たモデルがunityでちゃんと動ける・表示されるか確認していこうと思います。

※観点としては超絶初心者(筆者自身がそうだから)がモデル作ってunityで動かしてって感じなので難しいことは一切してないです(はずです)。

 

VRChat向けにモデルを編集するあれこれは今、自分自身取り組んでいるところなので、気長にお待ちください。(まだVR機器を買ってすらいないのですが)

1/8にHTC Viveの新型の発表あるみたいな記事もあるので、それを買ってみようかとは思うのですが・・・手に入るかどうかも問題なのでどうなるかは未定です。

 

モデルのエクスポートを行う前にいくつか用意しておくと良いものをご紹介します。

まずはunity本体!これがなければ始まりません。

どのバージョンでも良いというわけではなく、最終的にはVRChatにて動作させたいので対応したバージョンをDLし、インストールしてください。

アカウント作成などもありますが、面倒くさがらず登録してください・・・

(有志作成のVRChatWikiでは現在は5.6.3p1が対応しているとのこと)

unity3d.com

インストールに関しては特に難しいことはありませんが、わからないことがあったら検索してみましょう。さて、unityの準備が出来ましたら今度はblenderです!

 

 

1.モデルのエクスポート

blender形式ファイルをそのままD&Dしてもイケるみたいですが、何が起こるかわからないのでちゃんとした方法を採ります。

エクスポートするモデルのメッシュ、アーマチュアを選択し、ファイル->エクスポート->fbx形式を選択してください。

(メッシュはひとつに統合しておいた方がいいかも?自分はしていなくても今のところ出来ていますが・・・)

f:id:p894c9dfd7753rE05SE265:20180107150146p:plain

右下の設定から選択したオブジェクトとその少し下にある項目からアーマチュアとメッシュのみを選択した状態(青色)にしてください。

f:id:p894c9dfd7753rE05SE265:20180107150435p:plain

また、「ジオメトリー」の「モディファイアを適用」のチェック、「アーマチュア」の「リーフボーンを追加」、「アニメーション」の「ベイク済アニメーション」のチェックを外した上で任意の場所にエクスポートを行ってください。

ここまでで問題がなければ、指定した場所にfbx形式のデータが出来ているはずです。

 

2.モデルをunityにインポート

unityを起動して新しいプロジェクト(3D)を作成してください。

f:id:p894c9dfd7753rE05SE265:20180107151556p:plain

特にどこもいじる必要なしです。Create Projectを押下しましょう!

f:id:p894c9dfd7753rE05SE265:20180107151649p:plain

そうするとまっさらな世界が現れます。

f:id:p894c9dfd7753rE05SE265:20180107151820p:plain

画面の下側にあるAssetsというウィンドウにエクスポートしたfbxファイルをD&Dしてみてください。

f:id:p894c9dfd7753rE05SE265:20180107151956p:plain

するとこんな感じでモデルデータとMaterialsがインポートされます。

モデルが後ろ向いたままインポートされてるのが初心者~って感じですね・・・

問題はないですが気になる方は直し方を検索!検索!

f:id:p894c9dfd7753rE05SE265:20180107152125p:plain

今度はモデルデータをHierarchyにD&Dすると右側の世界にモデルが表示されます!

すごい簡単!

 

と言いつつ、ここまでの作業でとある問題が起きやすいです。

それは・・・モデルの一部分のメッシュが透けて目の玉とか中身が丸見え!っていう怖いやつです。

その原因は面の向きなんです。

実はblenderはデフォのレンダーモードでは面の裏表関係なく表示する設定になっているんです。

一方、mmdやunityは面が裏側だと非表示になってしまうんですね。

f:id:p894c9dfd7753rE05SE265:20180107152806p:plain

 blenderゲームを選択すればunityなどと同じ(?)表示に近い状態でモデルを作成できるみたいです。(使ってやってないからわからない)

とにかく面を正しく表示するにはどうすればいいんだ!って話ですが、簡単に面を表にする方法があります。

編集モードで面を選択した状態でCtrl+Nキー押せば面が表向きになるのです。

楽なのは全選択からのCtrl+Nキーですかね。

その辺りを解決出来て無事に見た目通りにインポート出来たらモーションを取り込んで動かしてみましょう!

 

3.動かしてみる

動かすためにunityでのボーンの設定を行います。

Assetsにあるモデルデータをクリック、画面右端のInspectorからRigの項目を選択し、

AnimationTypeをHumanoidに設定し、Configureを押下しましょう。

f:id:p894c9dfd7753rE05SE265:20180107155039p:plain

そうすると画面が切り替わりボーンの設定画面になります。

Tポーズをしろ!という警告文が出ている場合は以下の画像のようにEnforce T-Poseを押すと自動でいい感じにしてくれます。(要微調整)

その状態でApply->Doneを押すと適用され、モーションを読みこむ準備は完了です。

f:id:p894c9dfd7753rE05SE265:20180107155319p:plain

根暗ちゃんには肩がないのでShoulderの所は空です。

※追記 2018/1/7

VRChat用のモデルにするには肩(Shoulder)と胸(Chest)は必須でしたので作成してください!

必須ボーンというものがあるらしく最低限ないとHumanoidにできないので注意してください。(今回の根暗ちゃんはかなり最低限に近い?)

Unity AssetStoreと検索して出てくるぺージにアクセスし、「locomotion」と検索してみましょう。

なぜかAssetStoreが重くて表示できなかったので現時点でSSなしです・・・なんでや・・・

代わりに説明したいことが全部載っているリンク先を・・・( 'ω')つ

0310unity.hateblo.jp

リンク先を観ながら設定出来ればとりあえず動くようになっていると思います!

アニメ系のレンダリングをしたいのであればトゥーンシェーダを適用するといいでしょう。

tips.hecomi.com

色々調節して動かすとこんな感じになります!

youtu.be

最低限のボーンでも生々しく動きます・・・感動です・・・

ちょっとカスタマイズすればこんなこともできます!楽しい!

youtu.be

という感じでUnityで使う分には問題ないことが確認できたので、おそらくVRChatでも問題ないかな?ってところまで来たので今回は終わりです!お疲れ様でした!

 

次回はVRChat向けにモデルを編集してみて動作を確認したい編を予定しています。

ただVR機器もまだなので、どういう感じにまとめるかも検討付いてないし、いつ頃になるかわかりませんが、無事にできたあかつきには記事にしたいと思っていますので気長にお待ちください~('ω')

 

ではまた。