モデルが出来た嬉しさから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機器もまだなので、どういう感じにまとめるかも検討付いてないし、いつ頃になるかわかりませんが、無事にできたあかつきには記事にしたいと思っていますので気長にお待ちください~('ω')

 

ではまた。

バーチャルyoutuberの活躍を見て自分も3D作って動かしたい!ってなった人の話

 

明けましておめでとうございます。mayoです。初投稿です。

 

突然ですが、最近とても賑わっているバーチャルyoutuberいいですよね・・・

色々すっ飛ばしますけど彼らの活躍ぶりを見ていて、こうは思わなかったでしょうか?

「俺・私もやってみてぇ」

と、僕は思いました。

 

一応言っておくと僕のやりたいのyoutuberの方ではなくて、VRで自身がキャラクターになるほうです!

某のじゃろりおじさんの動画を見ているとこんなような発言をしてました。

「狐耳(けも耳だったかな?)美少女になりたかったんですよ~」

それを叶えて楽しそうにしているのじゃおじを見て、自分もキャラクターになりたい!

って思うようになりました・・・

 

じゃあ、早速取り掛かるか!って気持ちになったので行動を開始。

まずは何が必要か考えてみました。

・なりたいキャラクターの3Dモデル

・ちょっとしたunityの知識 ←僕は今ここ

・VRChatに関する知識

 簡単に挙げるとこんな感じでしょうかね。兎にも角にも3Dモデルだ!

という気持ちになったので早速はじめてのモデル制作に取り組んでみることにしました。

 

※ちなみ

この記事では3Dモデルの詳細な制作手順は説明していません。

どんなものを利用・参考にして制作したか、などを紹介しています。

 

あと3D描画に強いPCを用意することをおすすめします。 (ないと苦行を極める)

VRChat自体はGTX1070くらいであれば良い感じに動作するみたいです。

GTX1060~1080が推奨のようですね~そこら辺のことは調査中。

 

3Dモデルを制作するために用意したソフトは「blender」です。

www.blender.org

理由としては無料である、リファレンスが豊富(重要)だったからです!

わからないことは調べる!これが一番早いと思います。

 

あとは本も一冊買いました、こちらです。


こちらの本は表紙の可愛い女の子を作成するための手順が丸々載っているものになります。

今回、自分の場合は自身の創作キャラクターの「根暗ちゃん」を作りたかったので都度読み替える形で、人型を作るにはどういう手順、どういうことが必要か、という視点で参考にしました。とても役に立ちました、ありがとうございました。

 

blenderは操作が難しいです、同じショートカットキーでもモードによって動作が変わるので、混乱して訳がわからなくなりモデルに変なことしちゃった・・・なんてならないようにバックアップなどを用意しつつ行うといいですよ。

操作に関することは以下を参考にしました。

riotoqll.hatenablog.com

 

モデル作成の大雑把な手順はこんな感じでした。

1.下絵を用意(正面と横向き 今回自分は正面絵のみで行いました)

2.下絵に沿ってメッシュオブジェクトを作成(ミラーモディファイドが大活躍)

f:id:p894c9dfd7753rE05SE265:20180106202516j:plain

3.それを立体化していきます

f:id:p894c9dfd7753rE05SE265:20180106202553j:plain

Eキーなどで面の押し出しを行ったりするとようやく立体感が

f:id:p894c9dfd7753rE05SE265:20180106202601j:plain

4.髪の毛を作成

髪の毛の制作に関しては様々あるみたいですが、自分は参考書ではなく、こちらを参考に作成しました。

ito144.hateblo.jp

f:id:p894c9dfd7753rE05SE265:20180106202635j:plain

(↑イナイレにこんな人いたような・・・)

f:id:p894c9dfd7753rE05SE265:20180106202645j:plain

ここまで出来た時点でやばい・・・かわいい・・・なったのでかなりテンションが上がり年末年始でしたが、作業ばっかりしていました。

5.身体の作成

f:id:p894c9dfd7753rE05SE265:20180106203512j:plain

欠損趣味のある人は二度おいしいかもしれませんね・・・

f:id:p894c9dfd7753rE05SE265:20180106203608j:plain

へそっ!へそだよ!

f:id:p894c9dfd7753rE05SE265:20180106203615j:plain

f:id:p894c9dfd7753rE05SE265:20180106203752j:plain

手足まで作ってようやく完成!

とは行かず、ここからは服の作成になります。

自分の場合は根暗ちゃんはスカートとかではなく、Tシャツにスウェットという格好を着せたかったので、手足を除く身体を複製→厚み付けからマテリアルで色付けをしただけで服を作ることができました。

f:id:p894c9dfd7753rE05SE265:20180106204230j:plain

凝った衣装を作る方は上に載せた参考書やネットの情報を頼りにするといいです。

髪や服の揺れなんかはクロスシミュレーションがいいみたいです。

dskjal.com

 

ここで僕はひとつ後悔をします・・・

 

それは制作前の下調べの際に、ゲーム上で動かすモデルは三角形で構成したものを用意しろ、という情報でした。

基本的にゲーム動作時に四角形は三角形に分割、再構成(?)され処理を行うのが普通らしく、高速・低処理にするにははじめから三角形にしとけ、ということでした。

これ自体に間違いはないと思うのですが、僕はなぜか製作段階で片っ端から四角形をどんどん三角形に変換していった結果、作業のし辛さ・微調整の難しさに繋がり、かなり無駄な時間を費やしました。

なので、基本的には四角形で所々三角形が混じるくらいの感じで作成し、ゲームで使うとなった時に三角形に変換を行い、調整したものを別名で保存すべきだったと後悔しました。(アホ)

おかげでUV展開をしてもテクスチャの作成が不可能なレベルの奇形になってしまったのでした・・・次からは気を付けます・・・

 

服も出来たし、今度こそ完成だー!!!動かすぞー!!!

とは行かず、ここからもうひと踏ん張りです・・・

これ以上なにを?と思うかもしれませんが、ボーンとウェイト設定をしていかなければなりません。

 

ボーンはなんとなくわかるけどウェイトって何?

ざっくり言うとある箇所のボーンが動いたときメッシュ(オブジェクト)はどれくらい影響(動くか)するかを決めるという機能です。

ここの設定がまた難しくてちょっと慣れが必要です・・・

ウェイト機能のイメージは以下のリンク先が掴みやすいと思います。

Blender入門#35:キャラクターアニメーション2(ウェイトペイント) – CGrad Project

 

ボーン→ウェイトの順ですのでまずはボーンから。

ひたすら参考にしたものを貼っていきますので、頑張って作ってください!(無責任)

かんたんBlender講座

 

ちなみに自分は指などを動かすつもりは無かったので、かなり簡略化したボーンで構成してみました。

f:id:p894c9dfd7753rE05SE265:20180106211005j:plain

バーチャルyoutuberの皆さんを見ていても指の制御はかなり難しいようなので、今回は切り捨てました。(動かない手をぶんぶんしてるのも可愛いよね)

※追記 2018/1/7

VRChat用にするためには肩や腹部は最低でも2等分程度する必要がありました

二度手間にならぬVRChatに必要なボーンを調べた上で作成してください!

後々、unityで簡単にモーションさせてみた動画も載せますが、簡略していてもちゃんと動くので、細かいことを気にしない人は楽な方法で精神衛生にいい方法を採るのも手ですよ。

ボーンもX軸ミラーで作成していくのですが、各部きちんと名前を付けていくことを忘れずに行ってください・・・ウェイト作業で楽をしたいのであれば・・・

 

ボーン入れたし動かすか!→動かねぇ!なんで!?

ウェイトが設定されていないからです。

ボーンだけではその個所を動かしたときにメッシュがどれだけ動くかはまだモデル的には定義されていないので動くはずがないのです!

ということでメッシュオブジェクトを選択し、オブジェクトモードでCtrl+Tabを押してウェイトペイントモードで詳細に設定していきましょう。

上記のウェイト参考ぺージを見ながらトライ&エラーでいい感じになるまで頑張ります。

AutoIKという機能をONにしておくといいですよ。(唐突)

 

良い感じに設定できると例えばポーズモードで手を選択した状態で動かすと腕や肩付近がボーンに綺麗に追従するようになります。

 

youtu.be

こんな感じにできたらようやく!モデルとしては完成です!

お疲れさまでした!!!

 

ちなみにここまで調べたり、作るのに12/26~1/2くらいの期間で出来ました。

正月ムードガン無視の2018年のスタートです!いえい!(ガキ使は見たよ)

 

長くなってしまったのでここで一旦区切ろうと思います。

次の記事ではモデルが出来た嬉しさからunityで動かしてみようってなった編です。

ではまた。